已經搜索了足夠的答案,但沒有一個解決方案適用於我。在多個Cpp文件中使用變量
方案: 我想包含一個.h文件,其中聲明瞭一些函數(未定義)和一些變量聲明。
如果我包括在源文件中該頭文件(2要準確)實際使用的函數和變量,然後,編譯的最後一個具有規定
未定義參考`接頭錯誤abc :: myfun(char const *,char const *,char *)'
頭文件中的所有函數和變量都聲明爲extern並且包含保護符。
我希望有一個cpp文件將一個值放入.h文件中定義的變量和另一個cpp文件中以便能夠讀取它。
此外,如果有幫助,每一件我的代碼是在命名空間中,我在您的.h
文件中定義(namespace abc{ //all my code, in all the files }
)
你可以分享你的代碼??? – perilbrain
首先,至少有一個源文件是否定義了變量/函數?你是否在鏈接中包含這些內容?其次,你是否在命名空間的外部包含你的頭文件?你不想無意中嵌套 - * ie *'abc :: abc :: something' – paddy
特別是'abc :: myfun(char const *,char const *,char *)'至少一個罪魁禍首。你可以從你的頭文件發佈聲明,並在源文件中定義它的位置嗎? – MartyE