Re[5]: Пример использования шаблонов для оптимизации
От: chaotic-good  
Дата: 27.11.14 14:11
Оценка:
J>>Ну да, но только если заинлайнится.
J>>А в случае шаблона это произойдет в любом случае.
W>Даже это не всегда бывает. Функция может быть встроена, а константы у компилятора не схлопнутся.
W>Вот небольшой пример по вычислению обратного числа в полукольце вычетов. Все три компилятора (gcc, clang, icc) разных версий (там в интерфейсе можно выбирать) успешно встраивают значение, но вычислить его ни у одного не получается. А вот в варианте с шаблонами у всех всё схлопывается до константы.

Ну так рекурсия же. Я не могу это так вот просто преобразовать в цикл а потом развернуть, а компилятор — и подавно. Может если бы там был императивный цикл а не рекурсия, то все бы у компилятора получилось.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.