クラスの配列があり、そのクラスから継承するオブジェクトを入れて、forループからオーバーライド関数を呼び出そうとすると、オーバーライドされた関数が実行されることに気付きました。
例:
class Entity{
void Update(){
print("A");
}
}
class Player : Entity{
void Update() override{
print("B");
}
}
array<Entity> entities;
void main(){
Player p;
entities.insertLast(p);
entities[0].Update();
p.Update();
}
出力:
A
B
私のangelscript-fooは少し錆びていますが、array<Entity@>
ここが必要だと思います。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加