Изменение константной переменной при помощи указателя
Имеется следующие задание: //Задание 1.Массив объектов класса. { std::cout << "Задание 1\n" << std::endl;
//Объявите и проинициализируйте массив ar из объектов
// типа MyString.
const int N=3;
MyString str1[N] = { MyString("Green"), MyString("Black"), MyString("Blue") };
//Проверка - печать строк-членов класса
for (int i = 0; i < N; i++)
{
std::cout << str1[i].GetString() << "\n";
}
//Замените размер const int N=5; , не изменяя список инициализаторов.
int* p = reinterpret_cast <int*>(N);
*p = 5;
MyString str1[N] = { MyString("Green"), MyString("Black"), MyString("Blue")};
for (int i = 0; i < N; i++)
{
std::cout << str1[i].GetString() << "\n";
}
}
Компилятор не даёт записать новое значение переменную N. Подскажите почему?