Виртуальные функции не должны вводиться в окончательный класс
Виртуальные функции не должны вводиться в окончательный класс.
Объявление функции как virtual
указывает, что вы намерены переопределить функцию в производном классе с другой реализацией. Затем та же функция может по-разному взаимодействовать с различными классами иерархии. Когда вы явным образом задаете класс как final
, вы не можете вывести из него класс. Потому что вы не можете вывести классы из final
класс, не вводите виртуальные функции в final
класс. Задайте все виртуальные функции в final
класс при помощи спецификатора final
.
Polyspace® помечает объявление виртуальных функций в final
класс, объявленный с этими спецификаторами:
virtual
override
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
Группа: Производные классы |
Категория: Необходимый, Автоматизированный |