摘要:
lambda 表达式是一个可用于创建委托或表达式树类型的匿名函数。 通过使用 lambda 表达式,可以可作为参数或返回编写本地函数,该函数调用的值。 Lambda 表达式用于编写 LINQ 查询表达式特别有用。 若要创建 lambda 表达式,则在 lambda 运算符 => 的左侧指定输入参数 (如果有),因此,您放置表达式或语句在另一端块。 例如,lambda 表达式 x => x * x 指定名为 x 的参数并返回 x 的值计算的。如下面的示例所示,可以将此表达式传递给委托类型:delegate int del(int i);static void Main(string[ 阅读全文
摘要:
当向委托分配一个方法时,协变和逆变会提供用于使委托类型与方法签名匹配的灵活性。 协变允许方法具有的派生返回类型比委托中定义的更多。 逆变允许方法具有的派生参数类型比委托类型中的更少。示例 1:协变 说明 本示例演示如何将委托与具有返回类型的方法一起使用,这些返回类型派生自委托签名中的返回类型。 由DogsHandler返回的数据类型是Dogs类型,它是由委托中定义的 Mammals 类型派生的。 class Mammals{}class Dogs : Mammals{}class Program{ // Define the delegate. public delegat... 阅读全文