博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C#】delegate委托的定义和使用方法
阅读量:4087 次
发布时间:2019-05-25

本文共 1537 字,大约阅读时间需要 5 分钟。

using System;namespace delegate委托的定义和使用方法{		class MainClass	{		//【1】 定义一个返回值是string,无参数的委托类型		public delegate string GetAstring ();		// ------------------------------------------------------------------------		// 【2】定义一个无参数,无返回值的委托		public delegate void  WriteString ();		// 【2】把委托类型作为方法的参数		static void Write (WriteString printFunction)		{			// 调用委托中所有的方法			printFunction ();		}		static void WriteTest1 ()		{			Console.WriteLine ("可以把方法1作为参数传递");		}		static void WriteTest2 ()		{			Console.WriteLine ("可以把方法2作为参数传递");		}		// ------------------------------------------------------------------------		public static void Main (string[] args)		{			//【1】--------------------委托变量赋值的两种方式------------------------			int age = 18;			//【1】-----------------------第一种赋值方式----------------------------			// getString指向age中的ToString方法			// new的时候括号里必须带有一个,无参数,返回值是string类型的方法			// 根据上面的delegate类型可判断参数方法的类型			GetAstring getString = new GetAstring (age.ToString);			// +=:表示这个委托里又追加了一个方法,委托了2个ToString方法,还可以追加更多			getString += age.ToString;			// 通过委托的实例去调用委托里的方法			string result = getString ();			Console.WriteLine ("result: " + result);			//【1】-----------------------第二种赋值方式----------------------------			GetAstring getString2 = age.ToString;			string result2 = getString2 ();			Console.WriteLine ("restlt2: " + result2);			//【2】---------------------------------------------------------------			WriteString test = WriteTest1;			test += WriteTest2;			test += WriteTest2;			/*  输出结果			可以把方法1作为参数传递			可以把方法2作为参数传递			可以把方法2作为参数传递			*/			Write (test);		}	}}

转载地址:http://cukii.baihongyu.com/

你可能感兴趣的文章
webpack的面试题总结
查看>>
实践这一次,彻底搞懂浏览器缓存机制
查看>>
Koa2教程(常用中间件篇)
查看>>
React Hooks 完全指南
查看>>
React16常用api解析以及原理剖析
查看>>
教你发布你npm包
查看>>
nvm 和 nrm 的安装与使用
查看>>
React Hooks 一步到位
查看>>
React Redux常见问题总结
查看>>
前端 DSL 实践指南
查看>>
ReactNative: 自定义ReactNative API组件
查看>>
cookie
查看>>
总结vue知识体系之实用技巧
查看>>
PM2 入门
查看>>
掌握 TS 这些工具类型,让你开发事半功倍
查看>>
前端如何搭建一个成熟的脚手架
查看>>
Flutter ListView如何添加HeaderView和FooterView
查看>>
Flutter key
查看>>
Flutter 组件通信(父子、兄弟)
查看>>
Flutter Animation动画
查看>>