Описание тега boost-lambda
Boost Lambda Library - это библиотека шаблонов C++, которая реализует форму лямбда-абстракций для C++.
1
ответ
MSVC и ошибка boost::lambda::bind: T0: стандартный аргумент не разрешен
Этот код прекрасно компилируется с GCC и Clang, но не с MSVC 2010: #include <boost/lambda/lambda.hpp> #include <boost/lambda/bind.hpp> #include <boost/function.hpp> #include <list> #include <string> enum Actions {}; std…
29 мар '12 в 19:55
3
ответа
Как написать буст:: лямбда-функтор, который возвращает новый функтор
Как я могу написать лямбда-выражение с двумя заполнителями, один для вызываемого объекта и один для аргумента функции, так что предоставление вызываемого объекта сначала возвращает унарную функцию. В приведенном ниже примере generate должно быть лям…
09 мар '11 в 13:38
1
ответ
Могу ли я использовать C++11 лямбда с libevent?
В libevent есть тип функции обратного вызова, используемый event_new(). typedef void (*event_callback_fn)(evutil_socket_t, short, void *); Я хочу использовать лямбду с event_callback_fn. Если я использую [](evutil_socket_t fd, short flags, void * _p…
22 ноя '18 в 09:37
1
ответ
Увеличить лямбда с вектором общих указателей
Ниже приведен слегка измененный код из одного хорошего примера, как копировать значения из одного вектора строк в другой вектор объектов. (см.: другой алгоритм копирования) #include <algorithm> #include <cstdlib> #include <iostream>…
07 окт '11 в 11:21
2
ответа
Скопировать карту в вектор
Я должен скопировать определенные элементы из std:: map в вектор. Это должно работать как в этом цикле: typedef int First; typedef void* Second; std::map<First, Second> map; // fill map std::vector<Second> mVec; for (std::map<First, S…
05 авг '10 в 01:31
1
ответ
Boost Phoenix (или Boost Lambda) - лениво брать указатель
Есть ли способ взять указатель ленивого значения феникса / ref? Если так, как?
06 мар '11 в 16:54
1
ответ
Ускорение вызова лямбда-функции
Я учусь повысить лямбда (не C++0X лямбда, потому что я думаю, что они разные). Но я не могу найти способ онлайн вызвать функцию-член (и затем вывести результат), если единственным входным параметром является объект вызова. Я имею в виду, что эта стр…
23 окт '14 в 11:52
1
ответ
Что не так с этим использованием boost::lambda::bind?
Что-то не так в этом коде? Я продолжаю получать ошибки компиляции. По сути, я хочу подключить функцию возврата void к сигналу, который имеет тип возврата void. Boost версия: выпуск 1.46.1 #include <boost/signals2.hpp> #include <boost/lambda…
13 авг '12 в 15:25
2
ответа
Другой алгоритм копирования
У меня есть два вектора. vector<Object> objects; vector<string> names; Эти два вектора заполнены и имеют одинаковый размер. Мне нужен некоторый алгоритм, который делает присваивание переменной объекта. Это может быть использование boost:…
06 окт '11 в 15:01
1
ответ
ref() в Boost::Lambda?
Что является эквивалентом Boost::Phoenix's ref в Boost:: Лямбда? Я не могу найти его в онлайн-документах. #include <algorithm> #include <string> #include <boost/lambda/bind.hpp> using namespace boost::lambda; int main() { std::stri…
01 сен '12 в 20:22
2
ответа
Усилить лямбда недоумение
Почему обратный вызов вызывается только один раз? bool callback() { static bool res = false; res = !res; return res; } int main(int argc, char* argv[]) { vector<int> x(10); bool result=false; for_each(x.begin(),x.end(),var(result)=var(result)|…
19 мар '09 в 22:14
2
ответа
boost::lambda выражение не компилируется
Я попытался написать функцию, которая вычисляет расстояние Хемминга между двумя кодовыми словами, используя библиотеку boost lambda. У меня есть следующий код: #include <iostream> #include <numeric> #include <boost/function.hpp> #i…
01 апр '10 в 09:04
3
ответа
Использование boost::lambda с контейнером STL
Полный код на https://gist.github.com/1341623 Я хотел бы отсортировать массив индекса (или вектор) для другого вектора, так что массив упорядочен по индексу другого вектора. Однако тип vector:: at не может быть разрешен. Я сделал попытку следующим о…
05 ноя '11 в 15:16
1
ответ
Как использовать boost::lambda для создания нового объекта для существующего указателя?
Что я хочу сделать, это -> создать новый объект в новом потоке. Что-то вроде: Class* object = 0; Arg arg; boost::thread t( lambda::bind( object = lambda::new_ptr< Class >()( boost::ref( arg ) ); это не компилируется, что правильно?
19 фев '13 в 01:10
6
ответов
Функция усиления и лямбда, чтобы обернуть функцию
Я хочу преобразовать этот простой код: void setZComp(Imath::V3f& pt) { pt.z = 0.0; } int myfunc() { ... std::vector<Imath::V3f> vec(5,Imath::V3f(1.0,1.0,1.0)); std::for_each(vec.begin(),vec.end(),boost::bind(&setZComp,_1)); ... } к чем…
06 окт '11 в 13:30
2
ответа
Boost Bind или лямбда-функтор, который возвращает константу
Могу ли я использовать boost::bind или библиотеку boost lambda для создания функтора, который игнорирует свои аргументы и всегда возвращает константу? например, функтор с эквивалентным поведением: int returnThree( SomeType arg ) { return 3; }
28 окт '14 в 15:02
0
ответов
Использование пользовательского оператора подписки с Boost.Lambda
Я использую Visual Studio 2005 и Boost 1.37. Я также протестировал этот же код на Visual Studio 2012 Express Desktop и Boost 1.50, но безуспешно. Я хочу использовать Boost.Lambda, получая доступ к пользовательскому оператору подписки для моего типа.…
10 окт '12 в 21:17
1
ответ
Как записать выражение boost::lambda в качестве аргумента обратного вызова функции
Предположим, у меня есть следующий код: #include <boost/lambda/lambda.hpp> #include <boost/lambda/bind.hpp> #include <boost/function.hpp> #include <list> class MyListChild { }; struct Filter { bool matches(MyListChild& ch…
24 окт '13 в 05:14
0
ответов
Повысить лямбду с помощью std::find_if не компилируется
Рассмотрим этот метод члена шаблона некоторого класса: template<typename T> bool elementIsInSharedPtrVector(const T& p_elem, const std::vector< boost::shared_ptr< T > >& p_Vector) const { return (std::find_if(p_Vector.begin…
10 сен '13 в 12:35
1
ответ
Boost.Lambda и Boost.Function плохо работают с Boost.Array, почему?
У меня проблемы с Boost. Когда я пытаюсь запустить что-то так просто, как #include <boost/function.hpp> #include <boost/lambda/core.hpp> #include <boost/lambda/bind.hpp> #include <boost/lambda/lambda.hpp> #include <boost/a…
06 ноя '13 в 03:29