相关疑难解决方法(0)

如何将矢量<bool>归零?

我有一个vector<bool>,我想把它归零.我需要大小保持不变.

通常的方法是迭代所有元素并重置它们.但是,vector<bool>是一个特别优化的容器,根据实现,每个元素只能存储一位.有没有办法利用这个来有效地清除整个事物?

bitset,固定长度的变体,具有该set功能.是否vector<bool>有类似的东西?

c++ vector

23
推荐指数
6
解决办法
6991
查看次数

用于搜索连续置位/清零位的位数组的快速代码?

是否有一些相当快的代码可以帮助我快速搜索大的位图(几兆字节)运行连续的零或一位?

通过"合理快速",我的意思是可以利用机器字大小并同时比较整个单词,而不是进行逐点分析,这是非常慢的(例如一个人vector<bool>).

它对于例如在卷的位图中搜索可用空间(用于碎片整理等)非常有用.

c c++ bitarray bitvector

7
推荐指数
1
解决办法
1171
查看次数

使用 back_inserter() 或 inserter() 提高 std::copy() 的效率

back_inserter非常insert_iterator方便,但效率也很低!

例如,当您追加chars 时,每个元素都会产生大量开销copy,而在许多情况下,实际上并不需要如此。

有没有办法让他们更有效率?

c++ inserter

6
推荐指数
1
解决办法
4710
查看次数

标签 统计

c++ ×3

bitarray ×1

bitvector ×1

c ×1

inserter ×1

vector ×1