c# – 解析器前端的泛型和挑战
如果你有:
F(G<A,B>(4)); 这是否意味着用户想要通过比较G和A产生的2个参数来调用方法F,而B和常数4? 或者是否表示调用F,使用类型参数A和B调用通用方法G,参数为4? 解决方法
所以我试过了,只是为了确定.事实证明这个工作很好:
void F(int x) { } int G<T,U>(int x) { return x; } class A { } class B { } void Main() { F(G<A,B>(4)); } 但是这会产生一些编译错误: void F(bool x,bool y) { } void Main() { int G = 0,A = 1,B = 2; F(G<A,B>(4)); }
所以答案是表达式F(G (4))或F(G> A,B>(4)),仅举几个例子. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |