資料結構與演算法(C#實現)系列---樹(三) (轉)

themoney發表於2007-09-30
資料結構與演算法(C#實現)系列---樹(三) (轉)[@more@]

資料結構與演算法(實現)系列---樹(三)

  Heavenkiller(原創)

:namespace prefix = o ns = "urn:schemas--com::office" />

  //overwrite .Equals() ---  reference  type  realization

  public overr bool Equals(object _obj)

  {

  if( _obj==null )

  return false;//因為this不可能為null

  if( ! (this.GetType()==_obj.GetType()) )

  return false;//型別不相等也不相等

  Tree tmpObj=(Tree)_obj;

  //比較引用成員

  if( !Object.Equals(this.Key,tmpObj.Key) )

  return false;

 

  //比較值型別成員

  if( !this.Degree.Equals(tmpObj.Degree) )

  return false;

  //if( !this.Height.Equals(tmpObj.Height) )

  //return false;

  return true;

  }

  //在此過載 ==,!= 後, 在以後繼承的類中不必實現了

  public static bool operator==(Tree _treeA,Tree _treeB)

  {

  return Object.Equals(_treeA,_treeB);

  }

  public static bool operator!=(Tree _treeA,Tree _treeB)

  {

  return !(_treeA==_treeB);

  }

 

 

 

 

  #region IComparable 成員

  public virtual int CompareTo(object obj)

  {

  // TODO:  新增 Tree.CompareTo 實現

  return 0;

  }

  #endregion

 

  }

}


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10794571/viewspace-974269/,如需轉載,請註明出處,否則將追究法律責任。

相關文章