Изучение C++, наступило функциональные шаблоны. В главе упоминалась специализированная специализация.C++ - Какова цель специализации шаблонов функций? Когда его использовать?
template <> void foo<int>(int);
void foo(int);
Почему специализироваться, когда вы можете использовать второй? Я думал, что шаблоны предполагают обобщить. Какой смысл специализировать функцию для определенного типа данных, если вы можете просто использовать регулярную функцию?
Очевидно, шаблон специализации существует по причине. Когда его следует использовать? Я прочитал статью Sutter's "Why not Specialize...", но мне нужно больше нестандартной версии, так как я просто изучаю этот материал.
, возможно, адрес: '& foo vs (void (...)) foo' или специализирующий тип возврата? –
Anycorn
Возможный дубликат [Специализация специализации важности и необходимости] (http://stackoverflow.com/questions/2197141/function-template-specialization-importance-and-necessiness) – jamesdlin