Это простой пример того, чего я пытаюсь достичь: у меня есть файл заголовка GlobalVar.h
#ifndef MY_GLOBALS_H
#define MY_GLOBALS_H
extern int flag;
#endif
A MainWindow.cpp
#include "Globalvar.h"
int flag;
void function() {
qDebug() <<"Flag is"<<flag;
}
main.cpp
#include "GlobalVar.h"
int flag=0;
int main() {
if(true) {
flag=1;
qDebug() <<"Flag is"<<flag;
}
}
Теперь на выходе консоли отображается значение флага в виде: «Флаг равен 1» (в строке № 61) и «Флаг равен 0» (в строке № 80).
Это означает, что флаг был установлен в 1 уже, когда он достигает MainWindow.cpp, тогда почему он показывает значение флага, равное 0?