第一次問這麼溫柔。返回類型的線外定義與聲明中的不同
我遇到了返回函數的自定義類型的問題。更具體地說,我有一個鏈表,並且我正在編寫一個遍歷列表末尾並返回指向該節點的指針的函數。不幸的是,我得到一個討厭的錯誤:
頭文件中包含的「MySpace」的範圍內「的MySpace返回類型外的線定義:: CDAL :: tailNode從在聲明不同」命名空間和模板類CDAL
private:
struct Node
{....};
函數頭
Node* tailNode();
,並在.cpp
我試過使用struct,因爲有人提到了非typedef聲明,您有時會需要它,並且我不再收到未知類型的錯誤,而是收到了此代碼。
在此先感謝您的幫助。
除了我的回答,除非你真的知道你在做什麼,否則你不應該在.cpp文件中定義模板。他們在使用時會給出未定義的參考。相反,只需在.h文件中定義該函數即可。 – 0x499602D2 2014-10-16 22:43:22