Spec-Zone.ru › C++

Метапрограммирование шаблонов


Метапрограммирование шаблонов — это совокупность методов создания новых типов и вычисления значений во время компиляции. Шаблоны C++ являются полными по Тьюрингу, если не ограничено количество рекурсивных инстанцирований и число допустимых переменных состояния. Эрвин Унру был первым, кто продемонстрировал метапрограммирование шаблонов на заседании комитета, дав компилятору команду вывести простые числа в сообщениях об ошибках. Стандарт рекомендует, чтобы реализация поддерживала как минимум 1024 уровня рекурсивного инстанцирования; бесконечная рекурсия при инстанцировании шаблонов приводит к неопределённому поведению.

Внешние ссылки

1. David Vandevoorde, Nicolai M. Josuttis, Douglas Gregor (2017), Шаблоны C++ — полное руководство, 2-е издание.
2. Викиучебник: Метапрограммирование шаблонов.
3. Википедия: Метапрограммирование шаблонов.

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/language/template_metaprogramming

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API