Exemplo n.º 1
0
        /// <summary>
        /// オブジェクトの大小を比較します。
        /// </summary>
        /// <param name="o">
        /// 比較対象のオブジェクトです。
        /// </param>
        /// <returns>
        /// このオブジェクトがoより大きいならば正の値、oと等しいならば0、oより小さいならば負の値を返します。
        /// </returns>
        public int CompareTo(ComparableCompositeKey <KEY1_T, KEY2_T, KEY3_T> o)
        {
            if (o == null)
            {
                return(1);
            }
            if (GetType() != o.GetType())
            {
                throw (new ArgumentException());
            }
            int c;

            if ((c = Key1.CompareTo(o.Key1)) != 0)
            {
                return(c);
            }
            if ((c = Key2.CompareTo(o.Key2)) != 0)
            {
                return(c);
            }
            if ((c = Key3.CompareTo(o.Key3)) != 0)
            {
                return(c);
            }
            return(0);
        }