在C++中初始化bool32_t对象时,我们需要强制转换它还是它会自动识别它?

When initializing a bool32_t object in C++, do we need to cast it or it automatically recognize it?

本文关键字:转换 自动识别 我们 bool32 初始化 C++ 对象      更新时间:2023-10-16

我想知道在C++中初始化bool32_t变量的正确方法是什么

当我将我的变量声明为bool32_t

bool32_t blah = false;

还是我应该明确地投下它。

blah = static_cast<bool32_t>(false);

我宁愿不必投掷它。如果是这样,此内部转换是否适用于 C++11 甚至更早版本?bool32_t属于C++标准图书馆吗?

首先,据我所知,bool32_t不属于C++标准库。除此之外,我认为它成为标准库的一部分没有任何意义,因为布尔值只需要存储两个可能的值 0 和 1,它们分别表示 false 和 true。这只需要 1 位 [即使布尔值本身的大小通常为 1 字节,尽管这可能因实现而异]。因此,大小为 32 字节的布尔类型对我来说似乎没有明显的用处。

因此,我认为您应该更详细地说明您的问题,提供有关bool32_t类型的更多信息,因为不知道该类型的作用或起源,就不可能为您提供帮助

bool32_t属于C++标准库吗?

不,它没有。通过快速搜索 cpp首选项或按 Ctrl+F 最新的标准草案,很容易确认这一点。

我想知道初始化bool32_t的正确方法是什么 C++变量

如果不看到类型的定义,就无法回答。