Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
Наследование от std::vector
не рекомендуется из-за отсутствия виртуальных деструкторов и других виртуальных функций, что нарушает LSP (принцип подстановки Лисков) и приводит к проблемам при полиморфном использовании.
Примеры проблем:
Проблема со срезом (slicing): При передаче объекта производного класса по значению или ссылке на базовый класс std::vector
, специфичные для производного класса данные и поведение будут потеряны.
c
Отсутствие виртуального деструктора: Если вы удаляете объект производного класса через указатель на базовый класс std::vector
, деструктор производного класса не будет вызван, что может привести к утечкам ресурсов.
c
Наследование от std::vector
не рекомендуется из-за отсутствия виртуальных деструкторов и других виртуальных функций, что нарушает LSP (принцип подстановки Лисков) и приводит к проблемам при полиморфном использовании.
Примеры проблем:
Проблема со срезом (slicing): При передаче объекта производного класса по значению или ссылке на базовый класс std::vector
, специфичные для производного класса данные и поведение будут потеряны.
c
Отсутствие виртуального деструктора: Если вы удаляете объект производного класса через указатель на базовый класс std::vector
, деструктор производного класса не будет вызван, что может привести к утечкам ресурсов.
c
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.