首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在UE4中,为什么我们需要重写BeginPlay,为什么我们需要在重写的BeginPlay中调用Super:: BeginPlay?

在UE4中,为什么我们需要重写BeginPlay,为什么我们需要在重写的BeginPlay中调用Super:: BeginPlay?
EN

Stack Overflow用户
提问于 2018-03-02 14:29:39
回答 1查看 2K关注 0票数 0

我在unity中制作了一些游戏,但我对UE4还很陌生,但我知道c++。为什么我们不能像在unity的启动和更新中那样用Tick和BeginPlay函数来编写功能而不覆盖呢?这些函数的调用行为是由ue4的行为树控制的,那么为什么我们需要在覆盖的tick函数中调用基类函数(Super::Tick)呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-15 10:03:55

BeginPlay和Tick是继承的方法。Override是一个C++指令,它要求编译器确保您的方法签名与继承的签名匹配。Super只是指继承的类。当你调用Super::Tick时,你说你想让你的override方法做继承方法做的事情,然后,你想做你添加的任何额外的功能。

您可以在不调用超类的情况下调用这些函数,但是这样您就不会拥有任何基本功能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49063858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档