求助 关于 操作符重载的
为什么我重载了System.Type的大于操作符
在同一个类中 却无法使用呢?
public static class OperatorTest
{
public static bool operator >(Type typeSource, Type typeTarget)
{
if (typeTarget.IsAssignableFrom(typeSource)) return true;
return false;
}
public static bool operator >=(Type typeSource, Type typeTarget)
{
//typeSource > typeTarget报错了
return typeSource > typeTarget ||
typeTarget == typeSource;
}
}
[解决办法]
C#下,不能在目标类外面,定义它的操作符。
[解决办法]
你又没给Type重载运算符,当然不能Type类型比较了
public static bool operator >(OperatorTest typeSource, OperatorTest typeTarget)
{
if (typeTarget.IsAssignableFrom(typeSource)) return true;
return false;
}
public static bool operator >=(OperatorTest typeSource, OperatorTest typeTarget)
{
typeSource > typeTarget报错了
return typeSource > typeTarget
[解决办法]
typeTarget == typeSource;
}
[解决办法]
不要是静态类,?typeSource 要是你定义的类型