因此,我想创建一个向量vector,每个向量中有5个元素,第一个向量中有4个向量。我想使所有元素都为假。
我可以:
vector <vector<bool> > a;
for(int i=0; i<4; i++){
vector<bool> tmp;
for(int i=0; i<5; i++){
tmp.push_back(False);
a.push_back(tmp);
但是有什么更快的方法吗?
答案 0 :(得分:3)
使用构造函数
#include <vector>
int main() {
std::vector<std::vector<bool>> a(4, std::vector<bool>(5, false));
}
使用C ++ 17,您甚至不需要类型(wandbox):
#include <vector>
int main() {
std::vector a(4, std::vector(5, false));
}
答案 1 :(得分:1)
是的,非常简单:
vector <vector<bool> > a( 4, vector<bool>(5, false) );