大家知道泛型委托Action,是定义一个没有返回值的委托。
例如:
public Action<int, int> AddAction = (x, y) => { Console.WriteLine(x+y); };
定义一个Action
可以在Action上F12进入可以看到源码为:
public delegate void Action<T1, T2>(T1 arg1, T2 arg2);
这里发现一个问题,T1,T2是什么类型呢,在哪里定义的,我按F12并没有找到对应的类型。
之后我试着定义一个类似Action的泛型委托。
public delegate int Add<Hello, World> (Hello x, World y);
自定义Action
然后我定义一个Add<Hello,World>的泛型委托变量
public Add<int, int> Adddemo= (x, y) => { return x + y; };
居然不报错,且能调用。
这里问题来了,我输入的Hello,World的类型是在哪里定义的呢?大家来帮助回答下
时间: 2024-09-30 11:36:48