C++에서 s.t 인터페이스를 어떻게 선언 할 수 있습니까? 당신이거야 그럼인터페이스에 대한 해결 방법
class Enemy {
public:
Enemy();
virtual ~Enemy();
virtual void doStuff() = 0;
};
:
/** Enemy "Interface" */
Class Enemy {
Enemy();
virtual ~Enemy();
virtual void doStuff() = 0;
};
/** Enemy of type 1 */
Class Enemy_type1 : public Enemy {
Enemy_type1();
virtual ~Enemy_type1();
virtual void doStuff() {
// different for every type of enemy
}
};
/** Add an enemy to EnemyManager */
void EnemyManager::addEnemy(Enemy * e) {
this->enemies.push_back(*e); // declared as vector<Enemy> enemies;
}
@see http://stackoverflow.com/questions/318064/how-do-you-declare-an-interface-in-c – Nicoretti
@ Kerrek SB 나는': public Enemy'를 추가하고 "c"를 변경했습니다. 알림을 보내 주셔서 감사합니다. 한 번에 여러 문제를 해결하기 때문에 답변을 수락하겠습니다. – Ben
@ Nicoretti "인터페이스"(addEnemy 함수 참조)를 참조 할 수있는 방법이 나와 있지 않으므로이 문제가 어떻게 해결되는지 알지 못합니다. – Ben