Angelscript вызывает функцию переопределения из объекта в массиве - PullRequest
1 голос
/ 09 июля 2020

Я заметил, что если у вас есть массив класса и вы вставляете объект, который наследуется от указанного класса, и пытаетесь вызвать замещающую функцию из a для l oop, он запускает замещающую функцию

пример:

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

1 Ответ

1 голос
/ 09 июля 2020

Мой angelscript-foo немного заржавел, но я думаю, вам понадобится array<Entity@> здесь.

...