vc++ 6.0的链接错误
我在头文件“ LoadFile.h"中定义了一些函数,在两个文件引用了这个头文件。程序在链接时出现了问题,
Terrain.obj : error LNK2005: "unsigned char * __cdecl LoadBitmapFile(char *,struct tagBITMAPINFOHEADER *)" (?LoadBitmapFile@@YAPAEPADPAUtagBITMAPINFOHEADER@@@Z) already defined in SkyBox.objDebug/演示程序.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.
上面出错的函数定义在”LoadFile.h"中
似乎是头文件中的函数被重复定义了,但是引用了头文件的两个文件并没有相互引用啊,应该不会重复的。忘高手指点!!谢谢!!
[解决办法]
你保证你的头文件不被其他文件包含??
不要在头文件里有分配存储空间的操作——定义变量,函数等
头文件声明
定义写到cpp里
[解决办法]
在头文件中写上
#pragma once