【发布时间】:2024-01-20 20:11:01
【问题描述】:
例如,假设我有这个类:
class base{
public:
update();
};
我有很多继承自这个的类:
class A : public base
{
//<...>
}
class B : public base
{
//<...>
}
所以我想知道 - 我能否以某种方式在所有类中调用函数 base::update(); 而无需将其全部写出 (A::update(); B::update();) 等。
就像在从基类继承它的所有类中调用一个会执行update(); 的函数一样。
谢谢!
编辑: 我正在做的是将我的实体系统更改为基于组件的系统,我想知道是否有更简单的方法来调用(比如说)update();在所有成员中继承的功能。而不是做enemy01.update();敌人02.update();等只写下一个更新();这适用于所有拥有它(继承它)的类,有点像给他们所有人调用函数的消息。
【问题讨论】:
-
我认为你应该在问这个之前尝试编写一个真正的程序。在遇到这个问题之前,您似乎会遇到其他问题。你误解了其他一些事情。
-
这是一个instance成员函数,调用的时候需要一个实例。
-
我认为您应该说明您要解决的高级问题。
标签: c++ class inheritance virtual-functions