比较两个对象operator true(class1,class2)
{
    //code;
}另外主要是怎么用这个重载。谢谢了

解决方案 »

  1.   

    true又不是运算符,是运算结果-_-||
      

  2.   

    你想重载的应该是 == 运算符,或者想重写 Equals方法 ,但这都不是重写true
      

  3.   

    true到的确是一个运算符,问题是你想干什么?如果是想能够比较两个值的话,重载比较运算符如==、!=、>、<等。
      

  4.   

    我就是想用一下true的重载,true的重载该怎么写,怎么用,大家给个例子吧 ,多谢
      

  5.   

    public class MyClass
        {
            public static bool operator true(MyClass my)
            {
                if (my.test1 == true && my.test2 != true)
                    return true;
                else if (my.test1 != true && my.test2 == true) 
                    return true;
                else return false;
            }        public static bool operator false(MyClass my)
            {
                if (my.test1 == true && my.test2 != true)
                    return true;
                else if (my.test1 != true && my.test2 == true)
                    return true;
                else return false;
            }        public bool test1;
            public bool test2; 
        }    class Program
        {
            public static void Main()
            {
                MyClass my=new MyClass();
                my.test1 = true;
                my.test2 = false;
                if (my)
                    Console.WriteLine("first true");
                else
                    Console.WriteLine("first false");
                my.test1 = false;
                if (my)
                    Console.WriteLine("second true");
                else
                    Console.WriteLine("second false");
                Console.ReadKey();
            }
        }重载这东西的意义是相当于重载了||和&&
      

  6.   

    就是象“Fortner(好想退休) ”写的。运算符的重载知道怎么写,但是true的写法和用法总也弄不懂,给的代码作为参照很好,多谢了。另外,怎么给分?hehe