static void add(double x, double y)
+="x, y, x + y);
static void sub(double x, double y)
-==x, y, x - y);
static void mul(double x, double y)
*="x, y, x * y);
static void div(double x, double y)
/="x, y, x / y);
该程序首先定义了一个委托类型 dualfunction ,注意 delegate 关键字之后要说明委托的返回类型(没有返回类型则为 void)和参数类型:
将指定的方法封装到委托对象中时,方法的参数列表和返回类型都必须和委托的定义保持一致。
通过委托调用当前类的静态方法名时,在创建表达式中只需写出方法名;如果是调用外部类型的静态方法,那么应写出方法所属的类型,如:“dualfunction fun1 = new dualfunction(如果调用的是非静态方法,那么还需指出方法所属的对象名。
c#还允许将方法名直接写在委托赋值表达式的等号右边,而不必写出完整的委托,例如:
dualfunction fun1 = sub;
在程序中可以通过委托对象来调用指定的方法,其效果和直接调用原始方法的效果是一样的,例如:
fun1(a,b);
从以上可以看出,委托的使用过程一般可以分为3步:类型定义、对象创建和方法绑定,以及方法调用。除了最后的方法调用外,委托变量的使用和一般对象变量的使用没有本质的区别。
比如,一组委托对象可以放在一个数组中:程序p6_1的主方法可以改写为如下内容:
static void main()
double a = 2.5, b = 2;
请选择函数(加0 减1 乘2 除3):"
int i =
funs[i](a, b);
C高级编程委托和事件
c 高级编程委托和事件。在c 中使用一个类时,分两个阶段。首先需要定义这个类,即告诉编译器这个类由什么字段和方法组成。然后 除非只使用静态方法 实例化类的一个对象。使用委托时,也需要经过这两个步骤。首先定义要使用的委托,对于委托,定义它就是告诉编译器这种类型代表了那种类型的方法,然后创建该委托的一个...
C委托,事件理解入门
c 委托,事件理解入门 译稿 目录 1.导论 2.什么是委托 3.事件的理解 4.事件关键字 5.最后 导论 在学习c 中的委托和事件过程中,我读了许多文章来理解他们二者究竟是怎么一回事,以及如何使用他们,现在我将整个的理解过程陈述以下,我学到的每一方面,恐怕也是你们需要掌握的 什么是委托?委托和事...
6 24安全事件反思
6.24山体滑坡 自然灾害事件反思。叶天生。6.24山体滑坡 自然灾害事件的发生已经南方分公司带来了较大的负面影响,被地球物理公司列为黄牌警告,此次事件虽然是昆明综合管理中心承担的项目中发生的,但谁也不能保证事情发生时,若承担项目的是自己所在的队伍,可以保证在这样的灾害条件下能做到万无一失,全身而退...