void和非void返回类型目前一直被认为是不兼容的。部分原因是因为系统的其他方面(特别是JIT)需要知道,在执行方法时返回值是否会留在栈上。
作者注:这里我故意含糊地使用了栈这个词,以避免太多不相关的细节。更多的信息请参阅Eric Lippert的博文The void is
invariant(http://mng.bz/4g58)。
委托的实质是间接完成某种操作,事实上,许多面向对 象编程技术都在做同样的事情。我们看到,这增大了复杂性(看看为了输出这点儿内容,用了多 少行代码),但同时也增加了灵活性。
委托总结
下面对委托进行总结:
委托封装了包含特殊返回类型和一组参数的行为,类似包含单一方法的接口;
委托类型声明中所描述的类型签名决定了哪个方法可用于创建委托实例,同时决定了调
用的签名;
为了创建委托实例,需要一个方法以及(对于实例方法来说)调用方法的目标;
委托实例是不易变的;
每个委托实例都包含一个调用列表——一个操作列表;
委托实例可以合并到一起,也可以从一个委托实例中删除另一个;
事件不是委托实例——只是成对的add/remove方法(类似于属性的取值方法/赋值方法)。
委托是C#和.NET的一个非常具体的主题,是大背景下的一个小细节。在本章剩余的部分,
将讨论一些更宽泛的主题。首先要讨论的是,当说到C#是一种静态类型的语言时,具体是什么意
思,以及这种说法有何暗示。
标签:委托,c#,void,摘抄,C#,实例,类型,方法 来源: https://blog.csdn.net/u012482453/article/details/102755188
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。