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