相关疑难解决方法(0)

在.NET中,委托的内部实现是什么?

我理解委托人的声明是这样的:

public delegate int PerformCalculation(int x, int y);
Run Code Online (Sandbox Code Playgroud)

但是,必须有更多的事情发生.委托的目的是提供指向方法的指针,为此,您将对方法的引用封装在委托中.

这个参考是什么类型的结构(代表内部)?我也明白你可以在委托中封装对多个方法的引用.这是否意味着委托中有一个包含这些数组的数组?

此外,委托中定义了哪些方法等.当您使用简洁声明委托时,实际发生了什么:

public delegate int PerformCalculation(int x, int y);
Run Code Online (Sandbox Code Playgroud)

编辑:一些澄清.声明委托时,编译器会自动创建一个从System.MulticastDelegate继承的密封类.如果你用ildasm查看你的程序集,你可以看到这个.这很整洁.基本上,使用一个语句,您将在编译时获得为您生成的全新类,并且它具有您需要的所有功能.

.net c# implementation delegates internal

18
推荐指数
2
解决办法
2540
查看次数

为什么我们可以在课堂外宣布代表?是不是反对OOP概念?

根据oops fundamentels,一切都必须在课堂上.那么为什么我们允许在课堂外创建代表呢?

c# oop

13
推荐指数
3
解决办法
6874
查看次数

标签 统计

c# ×2

.net ×1

delegates ×1

implementation ×1

internal ×1

oop ×1