c# 委托类似于 c 或 c++ 中的函数指针。委托是一个引用类型变量,它保存对方法的引用。可以在运行时更改引用。
声明委托的语法 -
delegate <return type> <delegate-name> <parameter list>
现在让我们看看如何在 c# 中实例化委托。
声明委托类型后,必须使用 new 关键字创建委托对象并将其与特定方法关联。创建委托时,传递给新表达式的参数的编写方式类似于方法调用,但没有方法的参数。
public delegate void printstring(string s);...printstring ps1 = new printstring(writetoscreen);printstring ps2 = new printstring(writetofile);
以下是在 c# 中声明和实例化委托的示例 -
示例 现场演示
using system;delegate int numberchanger(int n);namespace delegateappl { class testdelegate { static int num = 10; public static int addnum(int p) { num += p; return num; } public static int multnum(int q) { num *= q; return num; } public static int getnum() { return num; } static void main(string[] args) { //create delegate instances numberchanger nc1 = new numberchanger(addnum); numberchanger nc2 = new numberchanger(multnum); //calling the methods using the delegate objects nc1(25); console.writeline("value of num: {0}", getnum()); nc2(5); console.writeline("value of num: {0}", getnum()); console.readkey(); } }}
输出value of num: 35value of num: 175
以上就是如何在c#中声明和实例化委托?的详细内容。