在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
匿名方法是在初始化委托时内联声明的方法。例如下面这两个例子: 不使用匿名方法的委托: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
public static int add(int x)
{
return x + 20;
}
delegate int otherdel(int param);
public static void Main()
{
otherdel del = add;
Console.WriteLine("{0}", del(20));
Console.WriteLine("{0}", del(10));
}
}
}
使用匿名方法的委托: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
delegate int otherdel(int param);
public static void Main()
{
otherdel del = delegate(int x)
{
return x + 20;
};
Console.WriteLine("{0}", del(20));
Console.WriteLine("{0}", del(10));
}
}
}
两种结果是一样的。 使用匿名方法1)声明委托变量时候作为初始化表达式。 2)组合委托时在赋值语句的右边。 3)为委托增加事件时在赋值语句的右边。 匿名方法语法delegate (parameters ){implementationcode}; 关键字 参数 语句块 匿名方法不会声明返回值类型。但是匿名方法返回值类型必须和委托返回值一样。
参数:参数数量,类型和修饰符必须和委托一样。 但是我们可以使圆括号为空,或省略圆括号来简化匿名方法的参数列表。但是仅在下面两项都为真的情况下才可以这么做。 1,委托的参数列表不包含任何out参数的委托。 2,匿名方法不使用任何参数。 例如下面: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
delegate int otherdel(int param);
public static void Main()
{
otherdel del = delegate
{
cleanup();
printMessage();
};
}
}
}
params参数:如果委托参数包含params参数,那么params关键字就会被匿名方法的参数列表忽略。如下: delegate int otherdel(int x,params int y);
otherdel del = delegate(int x,int y)
{
-------------
};
匿名方法是在初始化委托时内联声明的方法。例如下面这两个例子: 不使用匿名方法的委托: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
public static int add(int x)
{
return x + 20;
}
delegate int otherdel(int param);
public static void Main()
{
otherdel del = add;
Console.WriteLine("{0}", del(20));
Console.WriteLine("{0}", del(10));
}
}
}
使用匿名方法的委托: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
delegate int otherdel(int param);
public static void Main()
{
otherdel del = delegate(int x)
{
return x + 20;
};
Console.WriteLine("{0}", del(20));
Console.WriteLine("{0}", del(10));
}
}
}
两种结果是一样的。 使用匿名方法1)声明委托变量时候作为初始化表达式。 2)组合委托时在赋值语句的右边。 3)为委托增加事件时在赋值语句的右边。 匿名方法语法delegate (parameters ){implementationcode}; 关键字 参数 语句块 匿名方法不会声明返回值类型。但是匿名方法返回值类型必须和委托返回值一样。
参数:参数数量,类型和修饰符必须和委托一样。 但是我们可以使圆括号为空,或省略圆括号来简化匿名方法的参数列表。但是仅在下面两项都为真的情况下才可以这么做。 1,委托的参数列表不包含任何out参数的委托。 2,匿名方法不使用任何参数。 例如下面: using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
class Program
{
delegate int otherdel(int param);
public static void Main()
{
otherdel del = delegate
{
cleanup();
printMessage();
};
}
}
}
params参数:如果委托参数包含params参数,那么params关键字就会被匿名方法的参数列表忽略。如下: delegate int otherdel(int x,params int y);
otherdel del = delegate(int x,int y)
{
-------------
};
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论