2

有没有一种有效的方法来测试子范围std::bitset似乎表明不是。

看到 std::bitset::anyand std::bitset:all(对于 C++11),但它们是针对整个集合的,而不是一个子范围。我希望的是anyand的重载版本all。就像是:

bool all(size_t off, size_t len) const;

std::bitset::test也只是一点点。从理论上讲,我可以构建位集来对位旋转,但是这些位集会相当大,这可能不合理。

想法?

谢谢!

4

1 回答 1

0

(至少在理论上)您的标准库有可能具有std::all_of,std::any_ofstd::none_of专门std::bitset::iterator用于利用库的内部知识提供比您自己更有效的实现的算法的版本。

如果没有,那么编写和贡献此类专业可能非常值得您付出努力。当然,假设您的标准库以您愿意同意的条款接受此类贡献。

于 2016-10-11T16:40:21.803 回答