/// <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); }