-2
template <typename T=char>
我在一些項目中看到了這段代碼。 他/她爲什麼把「= char」放在他們的? 這是合法的,這是什麼意思?是模板<typename T = char>正確嗎?
謝謝
template <typename T=char>
我在一些項目中看到了這段代碼。 他/她爲什麼把「= char」放在他們的? 這是合法的,這是什麼意思?是模板<typename T = char>正確嗎?
謝謝
這對模板參數的默認值,因此它可以實例化而不必指定該類型。
template <typename T=char>
class Foo { ... };
Foo<> x; // a Foo<char>
Foo<char> y; // same as above
Foo<int> z; // now a Foo<int>
它用於設置類模板參數的默認值或類型。
template <class T=char, int N=10> class mysequence {..};
我們可以通過聲明創建一個使用默認模板參數的對象:
mysequence<> myseq;
這將等同於:
mysequence<char,10> myseq;