Data structures and algorithms (C # implementation) series --- tree (III)
Heavenkiller (original)
// Overwrite object. Equals () --- reference type Realization
Public override bool equals (object _ OBJ)
{
If (_ OBJ = NULL)
Return false; // This cannot be null
If (! (This. GetType () = _ obj. GetType ()))
Return false; // The type is not equal.
Tree tmpobj = (tree) _ OBJ;
// Compare referenced members
If (! Object. Equals (this. Key, tmpobj. Key ))
Return false;
// Compare value type members
If (! This. degree. Equals (tmpobj. Degree ))
Return false;
// If (! This. Height. Equals (tmpobj. Height ))
// Return false;
Return true;
}
// Reload here = ,! =, It is not necessary to implement
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 Member
Public Virtual int compareto (Object OBJ)
{
// Todo: Add tree. compareto implementation
Return 0;
}
# Endregion
}
}