c# – 使用uint或int

前端之家收集整理的这篇文章主要介绍了c# – 使用uint或int前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当然,我知道无符号整数(uint)和有符号整数(int)之间的基本差异.

我注意到在.NET公共类中,一个名为Length的属性总是使用带符号的整数.

也许这是因为无符号整数不符合CLS.

但是,例如,在我的静态函数中:

public static double GetDistributionDispersion(int tokens,int[] positions)

参数令牌和位置中的所有元素不能为负.如果是负面的,最终的结果是无用的.因此,如果我使用int来代替令牌和位置,我必须在每次调用函数时检查值(并返回无意义值或抛出异常,如果负值找到???),这是乏味的.

好的,那么我们应该为这两个参数使用uint.这真的对我有意义.

然而,我发现,在很多公共API中,他们几乎总是使用int.这是否意味着他们的实现,他们总是检查每个值的否定性(如果它是非负的)?

所以,一句话,我该怎么办?

我可以提供两种情况:

>这个函数只能在我自己的解决方案中自己调用;
>此功能将被其他团队中的其他人用作库.

我们应该为这两种情况使用不同的方案?

彼得

我做了很多研究,还没有理由说服我不要使用uint

猜你在找的C#相关文章