Я пытаюсь использовать глобальную переменную из отдельных файлов .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
, но получил ту же ошибку. Что не так с моим кодом?