Описание тега boost-function

A Boost C++ library that provide a family of class templates that are function object wrappers, similar to generalized callbacks.
1 ответ

Почему "boost::function = boost::bind(...)" создает 13 временных?

У меня есть довольно простой тестовый код. У меня есть класс, который просто записывает все операции над ним. Я связал это с boost::function объект как это: void Function(const Foo&) { printf("Function invoked\n"); } // ... boost::function<vo…
31 янв '13 в 03:11
0 ответов

Как вести реестр функций переменных параметров

Я объясню, что я пытаюсь сделать: Я работаю над игрой. Для работы с графикой у меня есть стек слоев, который я обновляю и рисую. ScreenLayer отвечает за предоставление визуализации для некоторого аспекта игры (инвентарь, обзор группы, карта мира, ка…
20 окт '11 в 20:42
1 ответ

C++ странный синтаксис обнаружен в параметрах шаблона Boost

Я просматривал документацию по классу "Функции" в Boost и наткнулся на это: boost::function<float (int x, int y)> f; Я должен признать, что этот синтаксис очень сбивает меня с толку. Как это может быть законным C++? Есть ли какая-то хитрость п…
27 июн '10 в 00:31
2 ответа

Boost bind и boost function, сохраняя функции с аргументами в векторе и затем выполняя их

Извините за плохо сформулированный заголовок. Я просматривал документацию, но не могу найти ничего, что могло бы решить эту проблему, которая у меня есть. В основном я хочу хранить несколько function1<void, void*> с предоставленными аргументам…
07 сен '12 в 20:28
1 ответ

Как boost::function поддерживает класс шаблона с параметрами шаблона различной длины

Я хочу использовать препроцессор boost для объявления шаблонных классов с различной длиной шаблона, в основном, как это делает boost::function. #if !BOOST_PP_IS_ITERATING #ifndef D_EXAMPLE_H #define D_EXAMPLE_H #include <boost/function> #inclu…
2 ответа

Отправка функции Python в качестве аргумента Boost.Function

В моем мире все усложняется попыткой связать код Python с моим C++. По сути, я хочу иметь возможность назначить функцию обратного вызова, которая будет использоваться после того, как HTTP-вызов получит ответ, и я хочу быть в состоянии сделать это из…
17 мар '16 в 00:29
2 ответа

Почему я не могу использовать boost::function в блоке Objective-C++?

Следующий код выдает исключение terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::bad_function_call> >' what(): call to empty boost::function на линии …
1 ответ

boost::function присвоение функции-члену

Я хочу использовать boost::function и передать его функции, чтобы функционировать как обратный вызов. Кажется, у меня возникли проблемы с назначением ему функции-члена. Функция, которой я хочу передать ее, является статической функцией (так как она …
06 янв '11 в 10:12
2 ответа

Копирует ли boost::function также копирование замыкания?

Скажем, у меня есть такая функция: void someFunction(const ExpensiveObjectToCopy&); Если я добавлю boost:: function, то она сохранит свою собственную клонированную копию объекта в своем закрытии: boost::function<void()> f = boost::bind(som…
31 дек '11 в 14:37
1 ответ

Использование std::function в std::map

У меня есть класс... #include <map> #include <boost/function.hpp> enum class ECmd { one, two, three }; class C { public: void Command(ECmd e) { auto pos = m_fnCmd.find(e); if (pos != m_fnCmd.end()) { // call the function (pos->second)…
2 ответа

Указатель на класс функции boost bind

class Foo { double f1( int x, std::string s1 ); double f2( int x, SomeClass s2 ); } Я хочу иметь возможность связывать s1 Foo.f1 без экземпляра foo для создания в сущности typedef double (Foo::* MyFooFunc)( int ) MyFooFunc func1 = boost::bind( &…
05 авг '11 в 14:28
1 ответ

Можно ли найти возвращаемый тип boost::function из ее typedef?

Можно ли найти возвращаемый тип boost::function исключительно из ее typedef? Пример: typedef boost::function<bool (int, float)> CallbackType1; typedef boost::function<float (int, float)> CallbackType2; Как найти тип возвращаемого значени…
07 авг '12 в 10:27
2 ответа

Неразрешенный внешний символ "public: void __thiscall..."

Я использую boost::function чтобы разрешить передачу функции Button конструктор, так что он содержит эту функцию. Вызывая его всякий раз, когда он активирован. typedef boost::function< void() > Action; В моем TitleState я создал кнопку, подобн…
20 фев '10 в 14:19
1 ответ

boost::bind() связывает дополнительные аргументы?

Связывает ли boost::bind() bind дополнительные аргументы, так как кажется, что передача функции bind без аргументов в один, ожидающий двойной аргумент, работает нормально? Если бы я должен был явно написать функцию связывания, что это должно быть? s…
27 мар '14 в 01:01
1 ответ

Класс внутренних лямбд и функция наддува

Я использую лямбды C++0x для определения функций наддува. У меня есть некоторые классы, где я определяю некоторые из их поведения, используя функции lambdas / boost. Что мне было интересно, так это то, можно ли выставлять данные о классах в лямбда-к…
13 май '11 в 04:19
1 ответ

Композиция буст-функции

Предположим, я хочу иметь функцию double adapter(double) Есть ли общий способ составить его с boost::function<double(...)> functor производить другой boost::function<double(...)> functor2 где functor2(...) == adapter(functor(...))? В час…
13 сен '12 в 18:39
1 ответ

Есть ли важные различия, которые нужно знать между boost::function и std::tr1::function

Я много использую Boost в своем коде, но пока воздерживаюсь от использования std::tr1, Теперь мне нужен более сложный указатель на функцию, которую могут предоставить эти два объекта. К сожалению, C+11 пока не вариант. Я прочитал это boost::function…
30 июл '12 в 20:14
1 ответ

Как заставить член класса вести себя как указатель на функцию, используя Boost

Я хотел бы, чтобы функция-член класса вела себя как указатель на функцию. Мне нужно это поведение, чтобы интегрировать мои собственные классы в некоторый существующий код. Кажется, что это может быть возможно с использованием Boost::function и Boost…
1 ответ

Как создать boost::function из шаблона подписи

Недавно я пытался создать гибкую реализацию шаблона наблюдателя, которая скрывает boost::signal, Я почти преуспел. у меня есть Observer класс, который должен иметь update сигнатура соответствия метода, предоставленная параметром шаблона. Пример испо…
23 июл '11 в 06:35
1 ответ

Использование boost::function и boost::bind к переменной-члену

Я пытаюсь создать boost:: function, которая позволяет устанавливать переменную-член объекта. Я создал самый простой пример, который я могу придумать, чтобы понять, что я пытаюсь (и не могу) сделать. Я чувствую, что у меня есть хватка boost:: bind, н…