|
|
От: | Alexey F | |
| Дата: | 16.02.09 10:27 | ||
| Оценка: | 18 (1) | ||
LVV>Этот вопрос практически не отражен в стандарте, поэтому компиляторы ведут себя по-разному. В системе Visual C++.NET 2003 выдается ошибка компиляции C2439, а Borland C++ Builder 6 выдает только предупреждение W8038 о том, что массив не инициализируется.
LVV>Не проходит и отмена константности. Например, зададим массив m0 как константный, а в теле конструктора определим инициализацию в цикле:
LVV>for (int i = 0; i < 10; ++i) LVV> const_cast<int>(m0[i]) = 0;
LVV>Однако и Visual C++.NET 2003, и Borland C++ Builder 6 отказываются компилировать такой цикл.
int&? Если да, то такой код бы скомпилировался... Правда, опасность его не уменьшилась бы