热门IT资讯网

C#协变与逆变

发表于:2024-11-26 作者:热门IT资讯网编辑
编辑最后更新 2024年11月26日,1,强类型与弱类型,如果A:B则B为弱类型,A为弱类型;协变为A的实例赋值给B的变量,如:B b=new A(),逆变为B的实例赋给A的变量;2,输入参数类型方式为协变,返回值方式为逆变3,deleg

1,强类型与弱类型,如果A:B则B为弱类型,A为弱类型;协变为A的实例赋值给B的变量,如:B b=new A(),逆变为B的实例赋给A的变量;

2,输入参数类型方式为协变,返回值方式为逆变

3,delegate T Func1();

delegate void Action1(T a);

static void Main(string[] args)

{

Func1 cat = () => new Cat();

Func1 animal = cat;

Action1 act1 = (ani) => { Console.WriteLine(ani); };

Action1 cat1 = act1;

Console.WriteLine(animal());

cat1(new Cat());

}

结果都为 cat,懂了吗?

此为学习笔记文

技术无止境,欢迎来讨论

0