开发者社区> 问答> 正文

为什么Array.Length是int,而不是uint

为什么是Array.Lengthint而不是uint。这使我感到困扰(一点点),因为长度值永远不能为负。

这也迫使我在我自己的类上将int用作长度属性,因为当您指定int值时,这需要显式转换。

因此,最终的问题是:unsigned int(uint)有什么用吗?甚至微软似乎都不使用它们。

展开
收起
游客ufivfoddcd53c 2020-01-03 16:53:26 999 0
1 条回答
写回答
取消 提交回答
  • 我认为这也可能与简化底层操作有关,因为如果Array.Length是无符号的,则Array.Length当然会在某个时候添加到负数,并添加到负int(二进制补码) ,结果可能会混乱。

    2020-01-03 16:53:39
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载