Я только один, чтобы убедиться, что никто не будет получать от моего без полиморфного класса, поэтому я использовал следующий синтаксис:Final без полиморфного класса в C++ 11
class Foo final
{
Foo();
~Foo(); // not virtual
void bar();
};
В ++ языка программирования C Я читал, что final
может использоваться вместе с override
для классов, содержащих виртуальные функции-члены. Я попробовал свой пример кода в VS 2013, и он компилируется без предупреждения.
Разрешено использовать ключевое слово final
для неполиморфных классов для предотвращения вывода из класса? Имеет ли смысл ключевое слово override
с неполиморфными классами?