Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Statement

Boost , Chapter 1. Phoenix 3.2.0 , Modules

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Ленивые высказывания...

Выражения, представленные до сих пор, достаточно сильны, чтобы построить довольно сложные структуры. Мы представили ленивые функции и ленивых операторов. Как насчет ленивых заявлений? Во-первых, закуска:

Печать всего нечетного содержимого контейнера STL с использованием<std::for_each>all_odds.cpp:

std::for_each(c.begin(), c.end(),
    if_(arg1 % 2 == 1)
    [
        cout << arg1 << ' '
    ]
);

А? Это действительно C++? Читайте в...

Да, это действительно C++. Приведенный выше примерный код максимально приближен к синтаксису C++. Этот стилизованный синтаксис C++ отличается от реального кода C++. Во-первых, это<if>. Во-вторых, блок использует квадратные скобки вместо привычных кудрявых брекетов.

[Note] Note

C++ в C++?

В то время какSpiritпытается имитировать EBNF на C++, Phoenix пытается имитировать C++ на C++!!!

[Note] Note

В отличие от ленивых функций и ленивых операторов, ленивые утверждения всегда возвращаются в пустоту.

Вот еще несколько примеров с аннотациями. Код говорит сам за себя.


PrevUpHomeNext

Статья Statement раздела Chapter 1. Phoenix 3.2.0 Modules может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Modules ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 01:44:08/0.0051958560943604/1