我正在尝试使用来自分离的 .cpp 文件的全局变量。我有一个 init.h 文件:
//init.h
#ifndef init
#define init
int a = 3;
#endif
我有一个 init.cpp 文件:
//init.cpp
#include init.h
最后我的 main.cpp 文件是:
//main.cpp
#include "init.h"
int main(void)
{
while(1)
{
}
}
在此之后,我收到错误:
1>init.obj : error LNK2005: "int a" (?a@@3HA) already defined in main.obj
1> ..deneme.exe : fatal error LNK1169: one or more multiply defined symbols found
为什么我的#infdef
控件不能解决这个问题?我也尝试过使用#pragma once
,但我得到了同样的错误。我的代码有什么问题?