W.J*_*Joe 5 c++ boolean vector
C++中的std :: vector是否会压缩?我的意思是我已经读过std :: vector可以将8个布尔值组合成1个字节.但是,当我在visual studio中尝试此代码时,
#include <vector>
#include <iostream>
using namespace std;
int main()
{
vector<bool> array {true, false, false, true, true,false,false,true};
cout << sizeof(array) << endl;
cout << sizeof(array[0]) << endl;
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它打印:
24
16
Run Code Online (Sandbox Code Playgroud)
而在另一个IDE中,例如代码块,它打印20和8.
我不太清楚这里的布尔值.
Dre*_*ann 15
C++中的std :: vector是否会压缩?
我不太清楚这里的布尔值.
你实际上没有得到array[0]
评估的东西.
它不计算为一个位.它评估为一个正确处理转换和赋值的代理对象.bool
bool
在sizeof
此代理并没有太大的意义.这不是一点点或一个布尔的大小.它是一个被编程为对特定位进行操作的对象的大小.
归档时间: |
|
查看次数: |
589 次 |
最近记录: |