⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class1.cs

📁 Csharp实例编程百例.rar
💻 CS
字号:
using System;

namespace testDelegateApp
{
	/// <summary>
	/// Class1 的摘要说明。
	/// </summary>
	class Class1
	{
		/// <summary>
		/// 应用程序的主入口点。
		/// </summary>
		[STAThread]
		static void Main(string[] args)
		{
			//
			// TODO: 在此处添加代码以启动应用程序
			//
			Class1 aClass = new Class1 ();

			MyDelegate aDele = new MyDelegate ( Class1.StaticFunction );	//实例化一个delegate为静态方法
			aDele(10);														//调用delegate中的函数

			aDele = new MyDelegate ( aClass.InstanceFunction );				//实例化一个delegate为实例方法
			aDele(100);

			aClass.CallDele(new MyDelegate ( aClass.InstanceFunction ));	//把静态函数作为参数传递
			aClass.CallDele(new MyDelegate ( Class1.StaticFunction ));		//把实例函数作为参数传递
		}

		public delegate void MyDelegate(int i);	//声明delegate

		public static void StaticFunction(int i)
		{//接受delegate委托的static方法
			Console.WriteLine ("调用Class1静态方法,{0}",i);
			Console.WriteLine ();
		}

		public void InstanceFunction(int i)
		{//接受delegate委托的实例方法
			Console.WriteLine ("调用Class1实例方法,{0}",i);
		}


		public void CallDele(MyDelegate aDeleFunction)
		{//以delegate对象作为参数的方法
			Console.Write ("在Class1实例函数中:");
			aDeleFunction(100);
			Console.WriteLine ();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -