51、C 编程与 Unity 3D:委托、事件与扩展函数的应用

C# 编程与 Unity 3D:委托、事件与扩展函数的应用

1. 委托与事件基础

在 Unity 3D 中使用 C# 编程时,将大量代码作为整个游戏的中央开关板会变得非常繁琐。委托可以实现很多很酷的技巧,带有泛型类型的委托能实现更多有趣的功能,尤其是事件。事件就像一个容器,可用于存放任意数量的函数。当事件被调用时,所有分配给它的函数都会被调用,这是一种很好的通知机制,能告知另一个函数你所等待的事情已经发生。

1.1 委托与事件的声明

我们通常使用 public void functionName() {//code statements} 这样的声明来定义函数。而委托的声明则根据具体需求,例如 delegate void delegateName(); 。下面通过一个基本示例来详细说明。

1.2 基本示例

在 Unity 中启动 Events_Scene ,定位到同名游戏对象上的 Events 脚本。通常, EventHandler 的命名会基于它要处理的事件类型。在了解其用途后,我们再确定更合适的名称。

声明 public delegate void Handler(); 是一种类型声明,创建该类型后,会创建变量 HandleDelegate 。为了等待委托被处理,我们创建一个新的 Listener 类,其中有一个函数会被分配给 HandleDelegate <

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值