Добрый вечер
Был тут недавно спор в
@supapro на тему "
template[d] function vs
function template".
Была позиция, что template function является синонимом для function template specialization — с чем я был не согласен.
В final draft (N4659) для С++17 все использования template function относились словосочетанию non-template function или к разделу про
std::function
.
То есть такого понятия как template function в
чистом виде нет
Ситуация такая же для С++20 draft (N4860).
Другая ситуация с templated function:
В С++17 нет ни единого упоминания этого термина, а в С++20 аж 5. Все связаны с добавленными концептами. При упоминании этого термина идёт ссылка на
9.3.3.5 (точнее
[dcl.fct]
), но там я не нашёл объяснения что же такое templated function. Причем, кажется, во всех местах где используется templated function на самом деле имеется в виду function template.
Всё-таки есть такой термин или это бага стандарта?