关于委托的一个简单小练习
2016-05-03 18:43
232 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 委托的第一个实例
{
class Program
{
static void Main(string[] args)
{
CalculatorDelegate CalDelegate = new CalculatorDelegate(add);
//第三步;第一委托的一个对象,但是注意,委托的对象在使用前一定要实例化,
//也就是实例化的时候需要指明这个委托对象默认调用哪个方法(函数)
int result = CalDelegate(10, 30);//第四步:通过委托的对象调用需要实现方法(函数),并且在这里传参;
Console.WriteLine(result);
CalDelegate -= add;//这一行的作用是:取消委托对象之前所关联的add方法(函数)
CalDelegate += Subtraction;//这一行的作用是:让委托对象与Subtraction的方法(函数)关联起来,
result = CalDelegate(20, 10);////用委托对象调用上面关联的那个方法;
Console.WriteLine(result);
Console.ReadKey();
}
static int add(int a, int b)//第二步:根据委托定义的函数原型编写需要实现的方法(函数);
//即就是要确保方法的函数返回值类型,参数值类型和个数要与委托的函数一致;
{
return a + b;
}
static int Subtraction(int a, int b)
{
return a - b;
}
}
public delegate int CalculatorDelegate(int a, int b);
//第一步 、首先我们声明一个委托(注意:委托的声明一般要写在类外)
//声明委托的办法是:public +delegate 关键字+ 函数的返回值类型+函数名+(参数的个数 和参数类型)
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 委托的第一个实例
{
class Program
{
static void Main(string[] args)
{
CalculatorDelegate CalDelegate = new CalculatorDelegate(add);
//第三步;第一委托的一个对象,但是注意,委托的对象在使用前一定要实例化,
//也就是实例化的时候需要指明这个委托对象默认调用哪个方法(函数)
int result = CalDelegate(10, 30);//第四步:通过委托的对象调用需要实现方法(函数),并且在这里传参;
Console.WriteLine(result);
CalDelegate -= add;//这一行的作用是:取消委托对象之前所关联的add方法(函数)
CalDelegate += Subtraction;//这一行的作用是:让委托对象与Subtraction的方法(函数)关联起来,
result = CalDelegate(20, 10);////用委托对象调用上面关联的那个方法;
Console.WriteLine(result);
Console.ReadKey();
}
static int add(int a, int b)//第二步:根据委托定义的函数原型编写需要实现的方法(函数);
//即就是要确保方法的函数返回值类型,参数值类型和个数要与委托的函数一致;
{
return a + b;
}
static int Subtraction(int a, int b)
{
return a - b;
}
}
public delegate int CalculatorDelegate(int a, int b);
//第一步 、首先我们声明一个委托(注意:委托的声明一般要写在类外)
//声明委托的办法是:public +delegate 关键字+ 函数的返回值类型+函数名+(参数的个数 和参数类型)
}
相关文章推荐
- [GDOI2016旅游(QwQ~)记]
- 大数据应用
- R语言学习四 图像的绘制一
- cdojQ - 昊昊爱运动 II
- 欢迎使用CSDN-markdown编辑器
- Python中函数参数设置及使用的学习笔记
- 常见正则
- 不怕得罪人地推荐这9本黑客书籍
- 求质数的几种算法
- Oracle诡异结果调查备忘 - A investigation memo of weird Oracle database search results
- linux:磁碟与档案系统管理
- 如何判断图片(img)是否已经加载成功--基于react
- 测试一下
- 工厂模式——排序方法的封装
- cdoj1344卿学姐种美丽的花
- 160家优秀国外技术公司博客
- 大数据数据来源
- Get方式中文乱码问题
- 4、阻止表单onsubmit事件的默认行为
- activiti 组任务指定办理人三种方式(十一)