繁体   English   中英

如何将数组的所有元素更改为特定值?

[英]How to change all elements of an array to specific value?

例如,我有一个像这样的数组:

bool log[100000]

我想在其中将日志中所有元素的值都设置为True。 换句话说,我希望在循环的每个循环后擦除所有已记录的更改。 我该怎么办? 我能否全部更改,但可以说100个值?

true填充整个数组:

std::fill(begin(log), end(log), true);

true填充前100个元素:

std::fill(begin(log), begin(log) + 100, true);

在C ++ 11中添加了beginend 如果您的编译器和库不支持它们,请考虑使用具有beginend成员函数的std::array<bool, N> 无论如何,您确实应该使用std::array模板,因为它没有开销,提供了标准的序列容器接口,并可以帮助您避免C数组的愚蠢语义。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM