如何将布尔向量中除一个元素外的所有元素设置为true? C++中有向量。< /P>

如何将布尔向量中除一个元素外的所有元素设置为true? C++中有向量。< /P>,c++,c++11,vector,C++,C++11,Vector,我需要将除第24个元素之外的所有元素都设置为true 我想使用一行/两行或优雅的赋值,使用C++11/14来完成它。对此有一个简单的定义。看起来很简单: std::vector<bool> vec(42, true); vec[23] = false; /* didn't know if you meant 24th in 0-index or 1-index */ 您可以使用构造函数 vector<bool> trumpIsGoodFor(42,true); trum

我需要将除第24个元素之外的所有元素都设置为true

我想使用一行/两行或优雅的赋值,使用C++11/14来完成它。

对此有一个简单的定义。看起来很简单:

std::vector<bool> vec(42, true);
vec[23] = false; /* didn't know if you meant 24th in 0-index or 1-index */

您可以使用构造函数

vector<bool> trumpIsGoodFor(42,true);
trumpIsGoodFor.at(23) = false; //use you can also use [23] subscript
您可以在此处查看的文档


std::vector包含一个.at函数,用于检查索引是否在向量的范围内。

您的意思是除了@c650是的,所有元素都离开第24个元素。可以保证这是一个问题吗?
vector<bool> trumpIsGoodFor(42,true);
trumpIsGoodFor.at(23) = false; //use you can also use [23] subscript