Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在C+;中初始化布尔向量的标准方法是什么+;_C++_Vector_Boolean - Fatal编程技术网

C++ 在C+;中初始化布尔向量的标准方法是什么+;

C++ 在C+;中初始化布尔向量的标准方法是什么+;,c++,vector,boolean,C++,Vector,Boolean,我四处调查,但没有找到任何明确的答案 如何初始化一个特定大小的布尔向量(全部设置为true或false)?这将统一初始化向量: const size_t SIZE = 10; // However many elements you want in the vector. const bool initial_value = false; // All elements will be set to this value std::vector<bool> m_allFalse(SI

我四处调查,但没有找到任何明确的答案


如何初始化一个特定大小的布尔向量(全部设置为true或false)?

这将统一初始化向量:

const size_t SIZE = 10; // However many elements you want in the vector.
const bool initial_value = false; // All elements will be set to this value
std::vector<bool> m_allFalse(SIZE, initial_value);
const size\u t size=10;//向量中需要多少元素。
常量布尔初始值=false;//所有元素都将设置为此值
std::向量m_allFalse(大小、初始值);
将军, 要在开始时初始化布尔值,可以使用以下方法:

bool temp[] = { true, false, false, true };
std::vector<bool> variousBool ( temp, temp + sizeof(tempBool) / sizeof(bool) );
bool temp[]={true,false,false,true};
标准:向量变量布尔(temp,temp+sizeof(tempBool)/sizeof(bool));

或干脆
std::vector variousBool={true,false,false,true} @ OnomeSotu,据我所知,这不是有效的C++。克里斯谢谢。如果我想要一个100布尔值的向量呢?有办法做到这一点吗?Tasosxak的回答看似合理,但我不明白声明中
(*)
的目的是什么。@xaxxon,你知道我可以这样做的有效方法吗?@Onomostu,我的评论适用于第二种形式,正确,当它们的值都相同时,这是不合适的<代码>(*)
是一个错误。#这里2:谢谢。不幸的是,这些文档现在对我来说有点模糊。大小类型是指向量大小还是数据类型?alloc()的作用是什么?我还是个编程新手。我还没有研究到那种程度。
size\u type
是一种数据类型,它足够大,可以容纳任何对向量实现有效的
vector
索引。现在它通常是一个无符号的64位整数
alloc
是可选参数。它允许您指定添加新元素时
向量如何创建新元素。这是一个严重的思维怪胎,但除非你进入游戏引擎编程或嵌入式系统,否则你不太可能与自定义分配器混在一起。