В UE4, почему мы должны переопределить BeginPlay и почему нам нужно вызвать Super :: BeginPlay в переопределенном BeginPlay?

Я сделал несколько игр в единстве, но я новичок в UE4, но я знаю о c ++. почему мы не можем написать функциональность в функциях Tick и BeginPlay, как мы делаем при запуске и обновлении Unity без переопределения? поведение вызова этих функций контролируется деревом поведения ue4, так почему нам нужно вызывать функцию базового класса (Super :: Tick) в переопределенной функции tick?

0

Решение

BeginPlay и Tick являются унаследованными методами. Override — это директива C ++, которая просит компилятор убедиться, что подпись вашего метода совпадает с унаследованной подписью. Супер просто относится к унаследованному классу. Когда вы вызываете Super :: Tick, вы говорите, что хотите, чтобы ваш метод переопределения делал то же самое, что и унаследованный метод, и после этого вы хотите делать любые дополнительные функции, которые вы добавили.

Вы можете вызывать эти функции без вызова суперкласса, но тогда у вас не будет никакой базовой функциональности.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]