解决方法
所以我试过了,只是为了确定.事实证明这个工作很好:
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)); }
The type or namespace name ‘A’ Could not be found (press F4 to add a using directive or assembly reference)
The type or namespace name ‘B’ Could not be found (are you missing a using directive or an assembly reference?)
The variable ‘G’ is not a generic method. If you intended an expression list,use parentheses around the < expression.
所以答案是表达式F(G 函数调用.有许多方法强制编译器将其视为两个参数的单个函数调用:f(g (4))或F(G> A,B>(4)),仅举几个例子.
原文地址:https://www.jb51.cc/csharp/92080.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。