서형박 Ответов: 1

У меня есть вопрос об инициализации переменных в пространстве имен


#include <iostream>

using namespace std;

namespace AAA
{
	namespace BBB
	{
		namespace CCC
		{
			int num1, num2;
		}
	}
}

int main()
{
	namespace ABC = AAA::BBB::CCC;
	cout << ABC::num1 << ABC::num2 << endl;
	return 0;
}


Что я уже пробовал:

Как видите, я не инициализировал переменные num1, num2 в пространстве имен AAA::BBB::CCC. В обычном случае правильно, что num1 и num2 должны иметь мусорные значения, но я подтвердил, что оба они были равны 0 после компиляции. Почему?

1 Ответов

Рейтинг:
5

CPallini

Это не имеет ничего общего с пространствами имен. В C++ глобальный переменные это 0-инициализируется по умолчанию.


서형박

а ну понятно...