我刚刚尝试实现一个类,其中有许多长度/计数属性等是uint
而不是int
。然而,在这样做的时候,我注意到这样做实际上很痛苦,就好像没有人真的想这样做。我应该在C#中使用uint作为不能为负值的值吗?
几乎所有派生出整体类型的东西都会返回一个int
,因此需要在多个点上施放。我想构造一个StringBuffer
,其缓冲区长度默认为该类中的一个字段。还需要演员阵容。
所以我想知道我是否应该在这里恢复到int
。无论如何,我当然不会使用整个范围。我只是想,因为我正在处理那里只是不能是负面的(如果是的话,这将是一个错误),实际使用uint
将是一个不错的主意。
P.S:我看到this question,这至少说明了为什么框架本身始终使用int
但即使是在自己的代码,它实际上是繁琐坚持uint
这让我觉得这显然不是真正想要的。
另请参阅[为什么不使用-int-int-instead-of-uint-in-certain-classes](http://stackoverflow.com/questions/782629/why-does-net-use-int -in-uint-in-certain-classes) – nawfal 2014-07-15 15:40:46