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@>
这里。
我注意到,如果你有一个 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@>
这里。