Подорожуй з gofrie.com

Typelists

В даній доповіді розказано про метапрограмування засобами C++, а саме про списки типів, в якому типи представлені у вигляді однозв'язного списку, реалізованого засобами рекурсивних шаблонів.

Варто згадати рядки Александреску:
C++ is a language that leads its users sometimes to say, «These are the smartest five lines of code I ever wrote.»


template <class T, class U>
struct Typelist {
    typedef T Head;
    typedef U Tail;
};

Концепція є простою: голова і хвіст списку зберігають типи. Така особливість мови C++, як template parameters дозволяє в свою чергу зберігати в хвості новий typelist.

Презентація
Реалізація
Доповідач: Єгор Даниленко