Как работает CTFE?

Как работает оценка функции времени компиляции (CTFE )? Я пытаюсь понять, как компилятор во время работы создает нечто несуществующее (, например функцию ), и выполняет ее. Я привык к идее, что исходный код становится двоичным файлом посредством компиляции, а затем выполняется двоичный файл. Итак, как же исходный код становится чем-то исполняемым, пока работает компилятор, и он может его запустить? Действительно ли функция создается и запускается, или это просто эмуляция вызова функции?

8
задан Arlen 22 April 2012 в 14:34
поделиться