2

在这里,我只是编写了一些处理整数值 -24/+24 的代码,并且我让我的方法返回一个 int ......我心想——在这种情况下我真的应该使用 short 吗?我知道在某个东西的内存为 48k 的时代,这可能很重要——但在当今的现代世界,这真的很重要吗?

即使我知道我的人数会很少,也可以“开心”吗?

4

1 回答 1

5

所有 ARM CPU 都有 32 位整数寄存器和至少 32 位宽的 L1 总线,因此使用 ashort绝对不会带来任何优势 [1],并且在某些情况下可能会损害性能。

将变量保留为 anint并确保无论您在何处运行代码,您都将获得最佳寄存器宽度。

[1] 此规则的例外情况是使用 NEON 单元时 - 在这种情况下,16 位操作比 32 位操作提供更多的并行性。

于 2012-08-21T19:25:01.970 回答