Created
July 5, 2016 11:38
-
-
Save zhenlinyang/2d352cd4a3c28c3882b70a0052f90800 to your computer and use it in GitHub Desktop.
Reference to Value
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class Name | |
{ | |
#region Field | |
public readonly string FirstName; | |
public readonly string LastName; | |
#endregion | |
public Name(string firstName, string lastName) | |
{ | |
FirstName = firstName; | |
LastName = lastName; | |
} | |
#region Equals&GetHashCode | |
public override bool Equals(object obj) | |
{ | |
if (!(obj is Name)) | |
{ | |
return false; | |
} | |
else | |
{ | |
return FirstName == (obj as Name).FirstName && LastName == (obj as Name).LastName; | |
} | |
} | |
public override int GetHashCode() | |
{ | |
return FirstName.GetHashCode() ^ LastName.GetHashCode(); | |
} | |
#endregion | |
#region operator | |
public static bool operator ==(Name name1, Name name2) | |
{ | |
return name1.Equals(name2); | |
} | |
public static bool operator !=(Name name1, Name name2) | |
{ | |
return !name1.Equals(name2); | |
} | |
#endregion | |
public override string ToString() | |
{ | |
return string.Format("FirstName = {0}, LastName = {1}", FirstName, LastName); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment