私は次のコードスニペットに私の質問を要約しました
struct Point
{
public int X;
public int Y;
public Point(int x, int y)
{
this.X = x;
this.Y = y;
}
public override int GetHashCode()
{
return base.GetHashCode();
}
public void PrintValue()
{
Console.WriteLine(
"{0},{1}",
this.X, this.Y);
}
}
上記の構造体は、GetHashCodeメソッドを含むValueTypeから派生しています。GetHashCode
以下は、Objectから派生し、メソッドを含むクラスバージョンです。
class Point
{
public int X;
public int Y;
public Point(int x, int y)
{
this.X = x;
this.Y = y;
}
public override int GetHashCode()
{
return base.GetHashCode();
}
public void PrintValue()
{
Console.WriteLine(
"{0},{1}",
this.X, this.Y);
}
}
前からちょっと知りたかったんだけど。これらの実装に違いはありますか?