【error LNK2005: "struct HWND__ * ui_hwnd" (?ui_hwnd@@3PAUHWND__@@A) 已经在 Susake.obj 中定义】

时间:2014-05-11 17:25:39   收藏:0   阅读:526

产生原因:多文件包含时,全局变量未用extern

解决方法:直接在全局变量前加上extern即可,若要在在其他文件中使用,该变量声明下就ok了~~

另外引出一个话题,你是不是也发现了这么一个现象??

比如

A.h

A.cpp

bubuko.com,布布扣
#include "A.h"
#include "B.h"

HWND ui_hwnd, hwnd;

int main(int argc, char *argv[])
{
     ui_hwnd = hwnd;
     return 0;   
}    
bubuko.com,布布扣

B.h

B.cpp

#include "B.h"

ui_hwnd = NULL;

为什么在B.cpp中却不需要声明ui_hwnd呢???
我个人猜测是B.h能识别B.cpp,而不能识别A.cpp(虽然都包含了B.h)~~~

转载请注明出处:http://www.cnblogs.com/Susake/p/3721883.html

【error LNK2005: "struct HWND__ * ui_hwnd" (?ui_hwnd@@3PAUHWND__@@A) 已经在 Susake.obj 中定义】,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!