Я пишу простую программу, которая имеет несколько настроек.Настройки - это статические переменные, определенные в заголовочном файле config.h
.
Например, внутри config.h
:
static int setting1 = 10 ;
В другом файле, kkk.cpp
, у меня есть функция, котораяизменяет значение setting1
:
void classA::functionA()
{
setting1=5;
classB.functionB();
}
Однако в classB.functionB
, который определен в файле eee.cpp
void classB::functionB()
{
int hh=setting1;
printf("%d",hh);
}
hh
, все еще старое значениеиз setting1
(setting1 == 10
).
Хотя setting1
является глобальной статической величиной, ее значение нельзя изменить?Почему?