为什么我重载了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;
        }
}

解决方案 »

  1.   

    你又没给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;
            }
      

  2.   

    不要是静态类, typeSource 要是你定义的类型