我在以下程序中遇到链接错误。
//FILE: CDummyMessage.h
#idndef DUMMY_FILE
#define DUMMY_FILE
#include "stdafx.h"
class CDummyMessage(){
static int objCount1;
std::string;
};
#endif //DUMMY_FILE
// CDummyMessage.cpp
all the necessary definition
//main cpp file: SmartPointerExample.cpp
#include "stdafx.h"
#include "CDummyMessage.h"
int main(){
CDummyMessage* OBJ1= new CDummyMessage();
}
我收到此链接错误:-
Error 1 error LNK2005: "private: static int dummy::CDummyMessage::ObjCount1" (?ObjCount1@CDummyMessage@dummy@@0HA) already defined in DummyMessage.obj C:\Users\Veil\Documents\Visual Studio 2012\Projects\SmartPointerExample\SmartPointerExample\SmartPointerExample.obj
我无法弄清楚此链接错误的原因。我使用了#ifndef 指令来防止重复包含头文件。