- , C ++, ++, .:-P
" C", , , , C polymorphism C. ++, ++ , , . - , ++ .
, , , , ++.
-. . , . (, !)
class EntitySpawn
{
public:
void spawn_entity()
{
spawn();
}
private:
virtual void spawn() = 0;
};
class ActorBasicNPC : public EntitySpawn
{
private:
virtual void spawn() { }
};
void test_spawn(EntitySpawn& es)
{
es.spawn_entity();
}
int main()
{
ActorBasicNPC npc;
test_spawn(npc);
};