Angelscript 从数组中的对象调用覆盖函数

Angelscript calling overriding function from object in array

我注意到,如果你有一个 class 的数组,并放入一个继承自所述 class 的对象,并尝试从 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@> 这里。