C#中委托为什么类型安全

来源:互联网 发布:西川贵教 知乎 编辑:程序博客网 时间:2024/05/22 07:49

C#中的委托 和 C++中的函数指针 非常相似

都是在一个方法参数中传入 另一个方法的指针

但是C#中传入的是delegate定义的方法, C++中传入的是一个指针即int32

所以问题就来了, c++中的函数指针为int32, 那么任何指针都是int32, 所以有可能传入的不是想要的方法的指针

但是C#中被delegate定义的方法在传入对应的方法时候,会监测对应的方法参数和方法类型

所以这就是所谓的类型安全。


delegate作为c#中的一个关键字,个人认为delegate应该封装了函数指针和参数类型,参数方法的对象

原创粉丝点击