在 std::bitset
中是否有一种有效的方法来测试子范围? This似乎不建议。
我see std::bitset::any
和 std::bitset:all
(针对 C++11),但它们适用于整个集合,而不是子范围。我所希望的是 any
和 all
的重载版本。像这样的东西:
bool all(size_t off, size_t len) const;
std::bitset::test
也只是一个位。理论上,我可以构造位集来对付位,但这些位集将相当大,这可能不合理。
想法?
谢谢!
最佳答案
您的标准库有可能(至少理论上)有 std::all_of
、std::any_of
和 std::none_of 版本
专门针对 std::bitset::iterator
的算法,利用库的内部知识提供比您自己更高效的实现。
如果没有,那么编写和贡献这样的专业可能是非常值得的。当然,假设您的标准库按照您愿意同意的条款接受此类贡献。
关于c++ - 测试 std::bitset 中的位范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39981829/