Cppcoreguidelines-virtual-class-destructor ... жалуется, когда у базы есть защищенный деструктор по умолчаниюC++

Программы на C++. Форум разработчиков
Anonymous
Cppcoreguidelines-virtual-class-destructor ... жалуется, когда у базы есть защищенный деструктор по умолчанию

Сообщение Anonymous »

Мы используем Clang-Tidy для проведения статического анализа, и мы включили CPP-core-guidelines. < /p>
Согласно предыдущему совету (одним из авторов CPP-core-guidelines), мы имеем абстрактный базовый класс с защищенным дефицитом дефолта и полученным классом (простой Hierarchy) с общедоступным неиспражным депутатом. < /p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p?struct Base {
public:
// all functions here are pure virtual
protected:
~Base() = default;
};

// NOT that final matters here... but cpp-core-guidelines still complains!!!!
struct Derived final : Base {
public:
~Derived(); //implementation irrelevant
};
< /code>
Есть ли какая-либо другая веская причина, почему Clang-tidy при применении [cpp-cor-guidelines], жалуется на это? /> < /blockquote>
Не должно быть возможно удалить с помощью базовой полиморфической (ошибка компилятора), так в чем проблема в этом случае (инструмент плохого подкладки? Плохие рекомендации?). Будет ли новое руководство ... даже защищенные деструкторы ABC должны быть виртуальными, поскольку удаление через полученное оптимизирует базовую виртуальность деструктора в любом случае ? Предупреждения)?
>

Подробнее здесь: https://stackoverflow.com/questions/796 ... -default-p

Вернуться в «C++»