模板類出現無法解析外部符號

轉自:https://blog.csdn.net/qq_41884002/article/details/99816073

解決方法:

1.在主函數包含頭文件時將實現模板類的函數也包含進來,如模板類在function1.cpp中實現,則在主函數中添加

#include "function.cpp";

(原因:一個編譯單元內包含了.cpp文件以及被include 的頭文件,如果將實現模板類的函數文件.cpp也包含進來,那麼主函數調用就給了模板類函數一個具現化的機會)

2.將模板類的實現方法寫在頭文件裏面,如模板類的頭文件爲:function.h,那麼就把實現要用到模板類的函數實現方法寫在頭文件中;

(原因:同上,將實現寫在頭文件裏面,那麼主函數調用就給了模板類函數一個具現化的機會)

3.在實現模板類的文件中調用一下模板類。

(原因:調用一下讓模板類函數得到具現化)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章