template<typename T>
void f1(T t);
template<typename T>
void f2(const T t);
template<typename T>
void f3(T& t);
template<typename T>
void f4(const T& t);
template<typename T>
void f5(T&& t); //universal reference
template<typename T>
void f6(const T&& t);
Какая разница в шаблоне функций этих шести видов?Вывод и унификация аргумента шаблона
Какова связь между выводом аргументов шаблона и объединением (общая концепция PLT)?
=== комментарий:
я знаю, чтобы получить некоторые подробности из http://en.cppreference.com/w/cpp/language/template_argument_deduction. Но этот сайт все еще запутан. Возможно, более подробное описание полезно обсудить с процессом вывода аргумента шаблона.
Время, проведенное на просмотр [Презентация Скотта] (http://channel9.msdn.com/Shows/Going+Deep/Cpp-and-Beyond-2012-Scott-Meyers-Universal-References-in-Cpp11) будет хорошо израсходованы. Осмелюсь сказать, что большинство ваших вопросов, вероятно, будут рассмотрены. – WhozCraig
'f1' и' f2' - это одно и то же объявление (это ограничение 'const' только в определении тела). – Jarod42
Что вы подразумеваете под «Унификация (общая концепция PLT)»? –