kni*_*ttl 5 c c++ arrays compare zero
我是否可以检查C(++)是否数组全为0(或为假)而不对每个值进行迭代/循环并且不分配相同大小的新数组(使用memcmp)?
memcmp
我正在滥用一系列bool来在运行时使用任意大的bitset并对它进行一些翻转
Oli*_*rth 7
您可以使用以下条件:
(myvector.end() == std::find(myvector.begin(), myvector.end(), true))
显然,在内部,这会遍历所有值。
另一种方法(确实应该避免循环)是覆盖所有写访问函数,并跟踪是否true曾经写入您的向量。
true
更新
下面 Lie Ryan 的评论描述了一种基于相同原理的更强大的方法。
归档时间:
15 年,1 月 前
查看次数:
7552 次
最近记录:
14 年,3 月 前