我有一个基类,其中我派生几个类。我有一个使用所有这些派生类以不同的方式另一个类。然而,我想调用每个派生类的Update()方法(从基类继承)。有一个简单的方法来做到这一点,或做我必须做的是这样的:

dim a As Derived1
a.Update

dim b As Derived2
b.Update

etc...
有帮助吗?

解决方案

我觉得要做到这一点的最好办法是保持在某种类型的列表中派生的对象,然后遍历他们致电更新。

在伪码:

foreach BaseClass item in {a, b, ...}:
    item.Update

其他提示

可以做到这一点通过多态性与同时传递函数调用的基类(伪代码):

Dim Dev1 as Derived1 '// This is derived from the class BaseClass
Dim Dev2 as Derived2 '// This is derived from the class BaseClass

CallUpdate(Dev1)
CallUpdate(Dev2)

Function CallUpdate(BaseClass bc)
    bc.Update()
End Function
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top