Saf bir sanal işleve sahip olmanın yanı sıra soyut bir temel sınıfın bir örneğini engellemenin bir yolu var mıdır?C++: soyut bir temel sınıfın herhangi bir örneğini önlemek için herhangi bir yol?
class BaseFoo
{
virtual void blah() = 0;
};
class Foo : public BaseFoo
{
virtual void blah() {}
};
ama VTable önlemek istiyorum:
Bunu yapabilirim.
Microsoft ATL ATL_NO_VTABLE sahiptir (my other question about virtual destructors göre) Bunu başarmak (veya en azından bunun ne işe yaradığını düşünüyorum ...)
Neden vtable'lardan kaçınmak istiyorsunuz? (Ve yöntem sanal olduğu gerçeği kullanmayacaksanız, neden bir temel sınıf ile rahatsız ediyorsun?) \ –