【发布时间】:2013-12-03 12:04:31
【问题描述】:
我想让 X 类的每个实例都具有唯一的 ID。
我正在使用递增的数字来执行此操作:
class X {
private int id;
private static int instanceCounter = 0;
public X() {
id = Interlocked.Increment(ref instanceCounter);
}
//...
}
这些对象也用作字典中的键,所以我想我可以从GetHashCode() 返回id。
public override int GetHashCode() {
return id;
}
我知道Eric Lippert's post,但它总是谈论从存储在对象中的多个数据计算哈希值。
就我而言,唯一的“独特”数据是id。
所以问题是:
这种方法有什么我没有想到的吗?
【问题讨论】: