Вопросы по теме 'stdbind'
Есть ли reference_wrapper‹› для ссылок rvalue?
Интересно, как можно сделать следующее
void f(string &&s) {
std::string i(move(s));
/* other stuff */
}
int main() {
std::string s;
bind(f, s)(); // Error.
bind(f, move(s))(); // Error.
bind(f, ref(s))(); // Error.
}...
3571 просмотров
schedule
05.01.2023
Автоматический вывод типа с функтором не работает
Возможный дубликат: std::bind abound function
void foo0(int val) { std::cout << "val " << val << "\n"; }
void foo1(int val, std::function<void (int)> ftor) { ftor(val); }
void foo2(int val, std::function<void...
260 просмотров
schedule
07.07.2022
Должен ли я видеть существенные различия между std::bind и boost::bind?
Я изучаю поддержку С++ 11 на g++-4.7 (Ubuntu/Linaro 4.7.3-2ubuntu ~ 12.04, если быть точным) и, кажется, нахожу различия.
В частности, если я закомментирую #include <boost/bind.hpp> и систематически заменю boost::bind на std::bind в...
1554 просмотров
schedule
03.12.2022
в базовом классе, как определить контейнер, содержащий функцию obj, которая может быть любой функцией производного класса?
Я хочу определить контейнер в базовом классе, который содержит функцию obj или что-то еще, что может реализовать мою цель. Эти функции obj могут вызывать функции производных классов. все они принимают одинаковые параметры.
#include...
113 просмотров
schedule
20.05.2023
Как мне `std::bind` нестатический член класса к функции обратного вызова Win32 `WNDPROC`?
Я пытаюсь привязать нестатический член класса к стандартному WNDPROC функция. Я знаю, что могу просто сделать это, сделав член класса статическим. Но, как изучающий C++11 STL, я очень заинтересован в том, чтобы сделать это с помощью инструментов...
3179 просмотров
schedule
10.08.2022
Могу ли я использовать std::bind конструктор базового класса, чтобы производному не нужно было вызывать его явно?
У меня есть абстрактный базовый класс, которому нужны некоторые объекты, переданные его конструктору, для инициализации его членов. Но я хотел бы избавиться от передачи этих объектов через конструктор производного класса.
class Derived : public...
130 просмотров
schedule
24.03.2024
С++ 11 привязать и применить?
std::bind иногда называют «частичным применением». Есть ли причины, по которым, когда все параметры функции связаны, сама функция не применяется?
Например, следующий код ничего не печатает.
#include <functional>
#include...
581 просмотров
schedule
29.07.2022
С++ 11 std::bind работает странно
Это менеджер событий, принцип работы которого показан в main(). Итак, код:
class CEventManager
{
public:
static CEventManager *const GetInstance()
{
static CEventManager pInstance;
return &pInstance;
};...
121 просмотров
schedule
03.07.2022
использовать std::bind с перегруженными функциями
Я не могу понять, как связать параметр с перегруженной функцией, используя std::bind . Почему-то std::bind не может вывести перегруженный тип (для его параметров шаблона). Если я не перегружаю функцию, все работает. Код ниже:
#include...
4823 просмотров
schedule
08.04.2023
Segfault в деструкторе std::function
В настоящее время я поддерживаю C++ REST Server, разработанный на C++. Он предоставляет некоторые функции, такие как промежуточное ПО и маршруты.
Маршруты хранятся во внутренней структуре класса маршрутизатора:
//! The http router
//!
//!...
1807 просмотров
schedule
09.06.2022
Отбрасывает ли std::bind информацию о типах параметров в С++ 11?
Случай возникновения проблемы
Пожалуйста, рассмотрите следующий код С++:
#include <functional>
#include <iostream>
#include <string>
// Superclass
class A {
public:
virtual std::string get() const {
return...
189 просмотров
schedule
09.09.2022
Можно ли принимать вывод `std::bind` напрямую как значение, без преобразования в std::function?
В этом ответе говорится, что std::bind возвращает объект по значению, а этот комментарий подразумевает, что присвоение std::function вызовет выделение кучи для хранения значение, возвращаемое std::bind .
Есть ли способ избежать этого...
664 просмотров
schedule
21.06.2023
Как std :: bind работает с функциями-членами
Я работаю с std::bind , но до сих пор не понимаю, как он работает, когда мы используем его с функциями класса-члена.
Если у нас есть следующая функция:
double my_divide (double x, double y) {return x/y;}
Я прекрасно понимаю следующие...
45934 просмотров
schedule
20.11.2022
std :: function к функции-члену с переменным числом аргументов, а затем привяжите аргументы шаблона с переменным числом аргументов
У меня есть две функции-члены класса с переменным числом аргументов. Когда вызывается первый Init(...) , я хочу создать std :: function для второй функции-члена класса, а затем привязать аргументы Init(...) к указателю функции.
Так что позже я...
790 просмотров
schedule
12.01.2023
опустить std :: заполнители в std :: bind
Вот что я делаю для создания std :: function: -
std::function<void(int,int,int)> f=
std::bind(&B::fb,this,
std::placeholders::_1,
std::placeholders::_2,
std::placeholders::_3
);
void B::fb(int x,int...
1061 просмотров
schedule
29.07.2023
Регистрация функции-члена класса в качестве обратного вызова функции с использованием std::bind
Я пытаюсь зарегистрировать функцию-член класса как (обычную) функцию обратного вызова. Если я что-то не так понял, это должно быть возможно с помощью std::bind (с использованием С++ 11). Я делаю это следующим образом:
std::function<void...
1183 просмотров
schedule
13.08.2022
Почему std::bind предотвращает позднее связывание при использовании передачи по ссылке?
У меня есть базовый класс, производный класс и виртуальная функция-член. У меня также есть функция, которая берет ссылку на базовый класс и делает полиморфный вызов функции-члена:
#include <iostream>
#include <functional>
class Base...
285 просмотров
schedule
10.10.2023
Сравните std::function, созданный с помощью std::bind
Вот пример игрушки
#include <iostream>
#include <functional>
struct Obj
{
int x;
int foo()
{
return 42;
}
};
int main()
{
Obj a, b;
std::function<int()> f1 = std::bind(&Obj::foo, &a);...
393 просмотров
schedule
11.12.2022
std::function принимает разные сигнатуры функций в С++
Я пытаюсь создать систему событий С++, аналогичную системе С#. Мне нужно иметь возможность хранить любые функции и вызывать их с правильными параметрами в нужное время.
Самое близкое, что я могу получить, это std::function, bind и placeholders, но...
345 просмотров
schedule
25.05.2024
Отбрасывает квалификаторы неизвестной причины (std :: bind () / lambda)
Я не понимаю, где и почему квалификаторы отбрасываются .
#include <iostream>
#include <memory>
class A {
public:
void f() {};
};
template <typename Callable>
void invoker(Callable c) {
auto l = [=]() {
c();...
763 просмотров
schedule
12.12.2022