nak*_*hli 5 c# operator-overloading operators
声明二元运算符时,至少有一个操作数类型必须是包含类型.这听起来总体上是一个很好的设计决定.但是,我没想到以下代码会导致此错误:
public class Exp<T>
{
public static Exp<int> operator +(Exp<int> first, Exp<int> second)
{
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
这个运营商有什么问题?为什么这种情况属于c#的运算符重载限制?允许这种声明是危险的吗?
| 归档时间: |
|
| 查看次数: |
5598 次 |
| 最近记录: |