【发布时间】:2017-06-24 08:43:18
【问题描述】:
我的意思是,UnityEvents 比原生 C# 事件慢,而且它们仍然存储对接收器的强引用。因此,我能找到在原生 C# 事件上使用 UnityEvents 的唯一正当理由是它们与编辑器的集成。 我忽略了什么?
【问题讨论】:
-
实际上 UnityEvent 是一个误导性的名称,因为其中没有真正的事件,只是 Action 的集合。请注意,没有办法像真实事件一样调用 UnityEvent,请使用 Invoke。
-
@Everts 我不明白“真实”一词如何帮助理解这个问题。另外,我不明白您在说什么:您通过使用 invoke 方法调用 UnityEvent 。据我了解,在底层,原生 c# 事件也是 Actions 的集合,它们只是隐藏该列表的原生 c# 语言结构。