Tôi đã tóm tắt câu hỏi của tôi ở sau đoạn mãSự khác biệt giữa GetHashCode được triển khai trong lớp Object và ValueType là gì?
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);
}
}
trên struct có nguồn gốc từ ValueType trong đó có phương pháp GetHashCode. Dưới đây là một phiên bản lớp xuất phát từ Object và chứa phương thức GetHashCode
.
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);
}
}
Tôi chỉ muốn biết. Có sự khác nhau nào giữa các triển khai này không?
Marc Gravell: +1 và cảm ơn cho lời giải thích chi tiết :) –