Consider the following:
class foo
{
public:
virtual void bar() final {}
};
In order to prevent bar from being redeclared in a child class, one may use a virtual final. Is this a good idea? Will this come at the cost of runtime overhead, even with optimization on? What if there's already a virtual table, will its size be extended to have bar?