说明:
该事件基类是比较简单的实现,但是也足够说明问题(C#中的事件到底是什么,并且是如何用的)
using System;
namespace FrameworkDesign
{
public class Event<T> where T : Event<T>
{
private static Action mOnEvent;
public static void Register(Action onEvent)
{
mOnEvent += onEvent;
}
public static void Unregister(Action onEvent)
{
mOnEvent -= onEvent;
}
public static void Trigger()
{
mOnEvent?.Invoke();//安全的调用方式
}
}
}