Back to questions
Junior — Middle
83
Каким образом можно предотвратить наследование конкретного класса?
Answer from AI
sobes.tech AI
В C++ предотвратить наследование от конкретного класса можно несколькими способами:
- Использовать ключевое слово
final(начиная с C++11)
class Base final {
// тело класса
};
// Попытка наследования вызовет ошибку компиляции
// class Derived : public Base {}; // Ошибка
-
Сделать конструкторы класса закрытыми (private) и предоставить только статические методы — это усложнит наследование, но не полностью его запретит.
-
Не объявлять виртуальные методы и не проектировать класс для наследования — это скорее рекомендация, чем технический запрет.
Самый простой и современный способ — использовать final для класса, чтобы компилятор запрещал наследование.