Дайте пожалуйста работающий в VS2010 пример объявления и использования лямбда-функций, желательно без stl и boost. У меня с ходу что-то не получается, компилятор ругается на синтаксис
Здравствуйте, x-code, Вы писали:
XC>Дайте пожалуйста работающий в VS2010 пример объявления и использования лямбда-функций, желательно без stl и boost. У меня с ходу что-то не получается, компилятор ругается на синтаксис
Здравствуйте, Alexander G, Вы писали:
AG>Здравствуйте, x-code, Вы писали:
XC>> желательно без stl
AG>Можно подумать, что при подходе "без STL и Boost" они сильно нужны. AG>Ну разве что сделать скоп-гард.
Вы как-то очень повязаны к конкретным тулам.
Безусловно лямбда ф-ии нужны и без них.
Я, например, много использую их (правда на другом языке ).
Здравствуйте, Alexander G, Вы писали:
AG>Здравствуйте, x-code, Вы писали:
XC>> желательно без stl
AG>Можно подумать, что при подходе "без STL и Boost" они сильно нужны. AG>Ну разве что сделать скоп-гард.
Вопрос не в том как их реально использовать и где они нужны... до реального использования дело еще не скоро дойдет.
Мне просто интересно как они устроены, нюансы синтаксиса и т.д. В частности, я хочу как минимум объявить функцию, аргументом которой была-бы лямбда-функция.
Здравствуйте, x-code, Вы писали:
XC> В частности, я хочу как минимум объявить функцию, аргументом которой была-бы лямбда-функция.
По идее 3 способа, 3й только для лямбд, захватывающих всё по сссылке ([] или [&] , для лямбд захватывающих не всё по ссылке тип не опеределён). Бету уже снёс, так что проверить второй и третий не могу, первый у меня работал.
а кто-то может показать как в новом c++ можно сделать правильный c#-подобный делегат?
т.е. обычное событие с подписчиками.
как теперь это делать правильно?
Я изъездил эту страну вдоль и поперек, общался с умнейшими людьми и я могу вам ручаться в том, что обработка данных является лишь причудой, мода на которую продержится не более года. (с) Эксперт, авторитет и профессионал из 1957 г.
Re[2]: лямбда-функции в vs2010
От:
Аноним
Дата:
23.05.09 08:14
Оценка:
Здравствуйте, Kingofastellarwar, Вы писали:
K>а кто-то может показать как в новом c++ можно сделать правильный c#-подобный делегат? K>т.е. обычное событие с подписчиками. K>как теперь это делать правильно?
Через Boost.Signals2
В новом C++ события с одним обработчиком (как в Delphi), а не с подписчиками.
Здравствуйте, x-code, Вы писали:
XC>Дайте пожалуйста работающий в VS2010 пример объявления и использования лямбда-функций, желательно без stl и boost. У меня с ходу что-то не получается, компилятор ругается на синтаксис
Вот моя заведённая на MS бага бага. Странно, что ИМЕННО ЛЯМБДЫ они не оттестили нормально. Вообще бета сырая какая-то. Торопились видимо. А лямбды это вообще супер. Тащусь теперь просто, особенно с PPl.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Kingofastellarwar, Вы писали:
K>>а кто-то может показать как в новом c++ можно сделать правильный c#-подобный делегат? K>>т.е. обычное событие с подписчиками. K>>как теперь это делать правильно?
А>Через Boost.Signals2
А>В новом C++ события с одним обработчиком (как в Delphi), а не с подписчиками.
ну да с одним, в контейнер сами запихнём. Просто я сам использую в качестве сигнала эти извраты шаблонные, но они мне не нравятся потому что на один вызов делегата делают по 2-3 вызова и еще кучу разыменований. Хочу как поинтер на функцию и не медленнее.
Я изъездил эту страну вдоль и поперек, общался с умнейшими людьми и я могу вам ручаться в том, что обработка данных является лишь причудой, мода на которую продержится не более года. (с) Эксперт, авторитет и профессионал из 1957 г.