gpt4 book ai didi

c# - 使用 int 作为标志有什么意义?

转载 作者:行者123 更新时间:2023-11-30 20:59:33 26 4
gpt4 key购买 nike

因为我需要查看 BigInteger 中的一些方法,所以我 DotPeeked 进入程序集。然后我发现了一些很奇怪的东西:

internal int _sign;

为什么要使用 int 作为数字的符号?没有理由,还是我遗漏了什么。我的意思是,他们可以使用 BitArrayboolbyte。为什么是 int

最佳答案

如果您查看反编译代码中_sign 字段的一些用法,您可能会发现如下内容:

if ((this._sign ^ other._sign) < 0)
return this._sign >= 0 ? 1 : -1;

基本上 int 类型允许使用乘法比较两个值的符号。显然 bytebool 都不允许这样做。

还有一个问题:为什么不使用 Int16,因为它会占用更少的内存?这可能与对齐有关。

关于c# - 使用 int 作为标志有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15443240/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com