分離された.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
てみましたが、同じエラーが発生しました。私のコードの何が問題になっていますか?