我需要專門研究C++中的函數模板。不帶參數的函數的模板專業化
template<typename T>
void doStuff<T>() {}
要
template<>
void doStuff<DefinedClass>();
和
template<>
void doStuff<DefinedClass2>();
我想這是不正確的語法(因爲它不是編譯)。我應該怎麼做?
另外,因爲我將不會在doStuff<DefinedClass>
中定義模板參數,是否可以在.cpp中聲明主體?
注意:doStuff將使用T wihtin來聲明一個變量。
當你說「它不是編譯」,你應該包括相關的錯誤信息。 –
'template void doStuff (){}'甚至編譯在第一位(我認爲這個''是無效的)。 –