пятница, 29 января 2016 г.

[prog.c++14] Видимо пора начинать осваивать фишки C++14

Увидел в документации к новой библиотеке Boost.MSM-lite (из boost-experimental) коротенький пример, который еще раз напомнил о том, что современный C++ совсем другой:

class example {
public:
    auto configure() noexcept {
        using namespace msm;
        return make_transition_table(
            "src_state"_s(initial) == "dst_state"_s + event<my_event> [ guard ] / action,
            "dst_state"_s          == terminate     + event<game_over>
        );
    }
};

Сразу вспомнилось, как по времени растянулось освоение возможностей C++11 по мере появления компиляторов со все более и более полной поддержкой стандарта C++11. Теперь вот нужно осваивать C++14, т.к. хоть это и не настолько принципиальное изменение C++, как переход от C++03 к C++11, но все же. Одна только возможность автоматического вывода типа возвращаемого значения чего стоит...

Отправить комментарий