当前位置:网站首页>关于c#委托、事件相关问题

关于c#委托、事件相关问题

2022-06-13 07:02:00 万年之光

1.委托的实质

大家应该都知道函数的调用都是先寻找函数的首地址,然后在去调用,而委托的本质是记录函数的首地址,就和调用函数的本质一样。

2.委托的初始化与自定义类型初始化区别

1.委托

委托能够在赋值为NULL的情况下,在去赋值函数名,可以正常调用,不需要new。

2.自定义类型(引用类型)

一定要new才能给其中的成员元素赋值,为什么呢?例如:

class Test 
{
        public int a;
}
Test s=null;
s.a=100;
Console.WriteLine(s.a);

会直接报错,因为其没有初始化,没有为改变量申请内存空间,只有变量名有内容空间。
原因:委托可以不用new的原因就是因为变量名可以直接赋予函数的首地址,可以去直接访问。

事件

1.事件只能在类内定义,类内去调用,因为其真实的写法是私有的,不能直接去调用

原网站

版权声明
本文为[万年之光]所创,转载请带上原文链接,感谢
https://blog.csdn.net/wwq18436224/article/details/125183847