Back to questions
Junior — Middle
81
Каким образом можно установить значение для объекта, объявленного с применением ключевого слова const?
Answer from AI
sobes.tech AI
В C/C++ ключевое слово const означает, что значение объекта нельзя изменить после инициализации. Однако есть несколько способов установить значение для const-объекта:
- Инициализация при объявлении:
const int x = 10; // Значение устанавливается сразу
- Использование конструктора для const объектов класса:
class MyClass {
const int value;
public:
MyClass(int v) : value(v) {} // Инициализация const-члена через список инициализации
};
const MyClass obj(5); // Значение value установлено через конструктор
- Использование указателей или ссылок на неконстантные данные (не рекомендуется, так как нарушает const-correctness):
const int x = 10;
int* p = (int*)&x; // Приведение типа
*p = 20; // Undefined behavior, может привести к ошибкам
Таким образом, для const-объекта значение должно быть задано при инициализации — изменить его позже нельзя. Если нужно менять значение, объект не должен быть const.