Создает ли этот код неопределенное поведение или это просто Unspecified Behavior?

Допустим, у нас есть две единицы компиляции, а именно:

// a.cpp
extern int value2;
int value1 = value2 + 10;

// b.cpp
extern int value1;
int value2 = value1 + 10;

Когда я попробовал его на VC2010, он инициализирует значение1 и значение2 сначала обнулить. не оба ли значение1 и значение2 динамически инициализированы, и инициализация по умолчанию к ним не применяется?

Спасибо,

6
задан AraK 13 May 2011 в 02:28
поделиться