Хабы: Программирование, C++
Лупхолы — это техника, позволяющая манипулировать глобальным состоянием компилятора, добавляя значения и считывая их.
Эта техника позволяет решать многие задачи, некоторые из которых будут рассмотрены в статье:
Узнать, какие параметры принимает конструктор типа.
Узнать, с какими шаблонными параметрами вызывался метод/функция с ADL.
Как сделать метапрограммирование с типами более похожим на обычный код, где есть состояние.
Читать далее