【发布时间】:2022-12-09 19:46:13
【问题描述】:
// overloads
void f(int x){}
void f(float x){}
// generic
void s<T>(T t){
f(t); // <<< cannot convert from 'T' to 'int'
}
// use
s(10);
C# 编译器响应说,在s<T> 的正文中,我cannot convert from 'T' to 'int'。还有另一种方法可以弥合通用 - >过载差距吗?
【问题讨论】:
-
在哪个 C#/dotnet 中? ... T 只是数字吗?
-
从 c# 11 开始,通用数学是允许的,除了你需要一些解决方法。
-
workaround 不完全是,但你应该明白了
标签: c# generics overload-resolution