gpt4 book ai didi

c++ - atomic_int_fastN_t 和 atomic_int_leastN_t 类型之间有什么区别

转载 作者:搜寻专家 更新时间:2023-10-31 00:31:07 24 4
gpt4 key购买 nike

关于 cplusplus.com我看到的数据类型是什么atomic_int_fastN_tatomic_int_leastN_t其中 N 可以是 8、16、32 和 64。那么它们中 least 和 fast 一词的含义是什么,或者它们有何不同?即如何 atomic_int_fast64_t不同于 atomic_int_least64_tatomic<int64_t>

最佳答案

同样的原则适用于非原子类型定义:std::int_least64_tstd::int_fast32_t

“最少n”类型是那些大小至少为 n 位的类型。如果实现不支持恰好 n 位的类型,则可能更多。

“快速n”类型是那些大小至少为 n 位的类型,并且使用它们不需要额外的操作处理器(即与它们一起工作很快)。

例如,在 32 位机器上,可能支持 16 位整数,但必须将它们提升为 32 位整数才能进行算术运算,并在计算完成后再次截断。在这样的机器上,std::int_least16_t 将是 16 位整数,但 std::int_fast16_t 将是 32 位整数,因为这是快速一起工作。

typedef std::int64_t 保证正好 64 位(并且只有在实现支持这样的整数时才会存在)。

关于c++ - atomic_int_fastN_t 和 atomic_int_leastN_t 类型之间有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34807415/

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