委托(Delegate)
# C# 委托(Delegate) C# 中的委托类似于 C 或 C++ 中函数的指针,但它是函数指针的 “升级版”。 委托是存有对某个方法的引用的一种引用类型变量,引用可在运行时被改变,可同时指向多个函数方法。 委托特别用于实现事件和回调方法。所有的委托都派生自 System.Delegate 类。 # 委托的声明 委托是一个类(类的声明可以在其他类的外面或里面) 类是数据类型,所以委托也是一种数据类型 声明的方式与一般的类不同 委托所封装的方法必须类型兼容 声明委托 // 委托的关键字:delegatepublic delegate string...
more...反射(Reflection)
# C# 反射(Reflection) 动态获取类型信息,动态创建对象,动态访问成员的过程。 # 优缺点 优点: 反射提高了程序的灵活性和扩展性。 降低耦合性,提高自适应能力。 它允许程序创建和控制任何类的对象,无需提前硬编码目标类。 缺点: 性能问题:使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和拓展性要求很高的系统框架上,普通程序不建议使用。 使用反射会模糊程序内部逻辑;程序员希望在源代码中看到程序的逻辑,反射却绕过了源代码的技术,因而会带来维护的问题,反射代码比相应的直接代码更复杂。 #...
more...一个简单的UnityUI框架
# 观前提醒 项目会在 GitHub 中开源,链接:https://github.com/Maikire/Unity/tree/main/UnityFramework/A simple Unity UI framework # UI 框架 这是一个简单的 UI 框架,用于统一管理 UI 和 UI 事件 # 需求分析 UI 窗口(Canvas)的统一管理(记录 / 隐藏所有窗口,提供查找窗口的方法) UI 事件管理 UI 流程控制(例如:打开多个 UI 窗口时,按下 Esc 关闭最后打开的窗口) # 核心类 UI 管理类 UIManager 用于管理(记录 /...
more...