Название: Какой тип у лямбды? Отправлено: fisenkdima от Апрель 05, 2013, 11:23 Не могу сообразить, почему QtCreator выдаёт ошибку на нижеприведённый код: 'function' was not declared in this scope,
хотя и подсвечивает это слово фиолетовым (т.е. понимает, что это). Мне нужно передавать функтор неким сложным образом между объектами, а я не знаю, какой проставлять тип принимаемого значения, и что нужно подключить инклюдом (если требуется что-то подключать). Подскажите, пожалуйста, в чем мой косяк и как его можно исправить. Код: #include <QCoreApplication> Название: Re: Какой тип у лямбды? Отправлено: m_ax от Апрель 05, 2013, 11:36 using namespace std
Название: Re: Какой тип у лямбды? Отправлено: Пантер от Апрель 05, 2013, 11:38 using namespace std Нееее. using std::function;Название: Re: Какой тип у лямбды? Отправлено: fisenkdima от Апрель 05, 2013, 11:56 Мимо. Это я уже пробовал.
'std::function' has not been declared Название: Re: Какой тип у лямбды? Отправлено: RedDog от Апрель 05, 2013, 11:58 А Ц11 подключен директивами?
Название: Re: Какой тип у лямбды? Отправлено: fisenkdima от Апрель 05, 2013, 12:01 Попадание. Блин, второй раз уже на одни и те же грабли наступаю, пора бы запомнить >.<
Спасибо за помощь. Название: Re: Какой тип у лямбды? Отправлено: Igors от Апрель 05, 2013, 13:41 Код: function< int ( int )> func1 = []( int i )->int{ return i; }; Спасибо Название: Re: Какой тип у лямбды? Отправлено: Hellraiser от Апрель 05, 2013, 14:58 Это лямбда-функция (http://ru.wikipedia.org/wiki/C%2B%2B11#.D0.9B.D1.8F.D0.BC.D0.B1.D0.B4.D0.B0-.D1.84.D1.83.D0.BD.D0.BA.D1.86.D0.B8.D0.B8_.D0.B8_.D0.B2.D1.8B.D1.80.D0.B0.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F) из стандарта C++11. Вот (http://habrahabr.ru/post/66021/) еще статья на эту тему.
|