C++中的布尔运算符

3

可能有重复:
什么是 'unsigned temp:3' 的含义?

我今天看到了一些使用单冒号的 c++ 代码。

bool variable_name : 1;

这和那个之间有什么不同?

bool variable_name = true;

9
你是在结构体中找到它的吗? - Mysticial
2
@HotLicks 或许是在另一种语言中… - Pascal Cuoq
1个回答

3

": 1" 表示这是一个只有1位的二进制位域,在 C 语言中就是这个意思。它可能被用来节省内存,允许多个布尔值存储在同一字节中。但不足之处在于你可能无法创建指向该布尔值的指针。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接