3
這兩個函數有什麼區別?關於C++ 11標準中可變參數模板的混淆
template <class ...Types> void f(Types... args...){}
template <class ...Types> void g(Types... args){}
這兩個函數有什麼區別?關於C++ 11標準中可變參數模板的混淆
template <class ...Types> void f(Types... args...){}
template <class ...Types> void g(Types... args){}
f
是完全一樣的
template <class ...Types> void f(Types... args, ...){}
// ^^^^^
也就是說,它是從C只是一個普通的老可變參數的參數列表由於歷史的原因,它可以在不被需要單獨平時,
使用參數。與g
的區別正是該參數。
請注意,由於C++樣式的可變參數將「吞噬」所有參數,因此不會傳遞參數到C樣式可變參數列表。
非常感謝! – ZhangXiongpang 2013-02-24 03:25:44
相關:http://stackoverflow.com/questions/5625600/what-is-the-meaning-of-token – jogojapan 2013-02-24 03:25:51