VS2017 錯誤 LNK2005

前提:在使用MFC編程時,使用到了大量的.h 和.cpp文件

報錯:

錯誤    LNK2005    "char const * * StateString" (?StateString@@3PAPBDA) 已經在 CDprocess.obj 中定義

 原因:在多個文件中,引用了包含全局變量的頭文件。

解決:1.不引用該頭文件;

           2.採用宏定義,宏定義是用來避免重複包含的,比如多個文件有重疊包含關係。有全局變量的頭文件只被主程序包含,其他文件中用extern。

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