![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
THE BOOST MPL LIBRARY: Partial Metafunction ApplicationBoost , ,
|
Front Page / Tutorial: Metafunctions and Higher-Order Metaprogramming / More Lambda Capabilities / Partial Metafunction Application |
Рассмотрим выражение лямбдаmpl::plus<_1,_1>. Один аргумент направлен на обаплюспараметров, тем самым добавляя число к самому себе. Таким образом,двоичнаяметафункция,плюс, используется для построенияунарноголямбда-выражения. Другими словами, мы создали совершенно новые вычисления! Мы еще не закончили, хотя: Предоставляя в качестве одного из аргументов неплацентаря, мы можем построить унарное лямбда-выражение, которое добавляет к его аргументу фиксированное значение, скажем 42:
mpl::plus<_1, mpl::int_<42> >
Процесс связывания значений аргументов с подмножеством параметров функции известен в мире функционального программирования какприложение частичной функции.
Статья THE BOOST MPL LIBRARY: Partial Metafunction Application раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |