gpt4 book ai didi

c++ - 为什么std::optional 使用两个字节?

转载 作者:行者123 更新时间:2023-12-01 15:13:15 30 4
gpt4 key购买 nike

如果C++允许bool使用任何位,那么是什么阻止C++优化std::optional使用1个字节并使用两位来表示has_valuevalue()呢?当然,我们会使用口罩,但是在现代处理器中,它不会损害性能。

最佳答案

This:

constexpr const T& operator*() const&;
constexpr T& operator*() &;
constexpr T&& operator*() &&;


使您想要的一切变得不可能。 operator*需要返回对保留对象的引用。

关于c++ - 为什么std::optional <bool>使用两个字节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61238552/

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