Возможный дубликат:
Как инициализировать массив в C
инициализация массива, ссылается на предыдущий элемент ok?
Интересно, насколько безопасно выполнить такую инициализацию в стандарте c/С++:
int a = 5;
int tab[] = { a , tab[0] + 1 , tab[1] };
Он успешно компилируется и выполняется с помощью gcc 4.5 и clang 2.9, но всегда ли это будет true?
Печать этой таблицы дает 5 6 6
. Его инициализируется в глобальном масштабе.
Как правило, это интересно в обоих, c и С++, но я хочу использовать его в С++:)