我想让int IDictionary<int, Driver>
稍微不那么模糊它的含义,所以我想也许包装它会是一个好主意.结果将是这样的IDictionary<finishPosition, Driver>
.
最好,finishPosition应该像这样分配finishPosition = 1
.
我不知道这是否可行以及如何实现.
当然,只需使用此using指令:
using FinishPosition = System.Int32;
在源文件的顶部,并像在示例中一样编写代码.
如果你使用这样的using指令,FinishPosition是一个int,其他文件将把它看作一个int - 没有定义新类型FinishPosition(感谢评论中的配置器).
您可以使用struct
隐式转换.
public struct FinishPosition {
public readonly int Position;
public FinishPosition(int position) {
this.Position = position;
}
public static implicit operator FinishPosition(int position) {
return new FinishPosition(position);
}
}
// ...
Dictionary<FinishPosition, Driver> dict = new Dictionary<FinishPosition, Driver>();
Driver bob = new Driver();
// The following two lines are effectively equivalent
dict[new FinishPosition(7)] = bob;
dict[7] = bob;
// So are these two
bob = dict[7];
bob = dict[new FinishPosition(7)]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
839 次 |
最近记录: |