std::
bitset::test
公众成员函数 <bitset>
bool test (size_t pos) const;
|
测试一个bit是否被设置
返回位置
pos处的bit是否被设置(即是否为
1)。
与访问操作符(operator[])不同,此函数在获取位值之前对
pos执行范围检查,
如果
pos等于或大于
bitset size则抛出
out_of_range。
☲ 参数
-
pos
-
检索其值的bit的顺序位置。
顺序位置从最右位开始计数,即顺序位置0。
Size_t是一个无符号整型。
☉ 返回值
如果位置pos的bit被设置,则为True,如果没有设置则为false。
☣ 示例
// bitset::test
#include <iostream> // std::cout
#include <string> // std::string
#include <cstddef> // std::size_t
#include <bitset> // std::bitset
int main ()
{
std::bitset<5> foo (std::string("01011"));
std::cout << "foo contains:\n";
std::cout << std::boolalpha;
for (std::size_t i=0; i<foo.size(); ++i)
std::cout << foo.test(i) << '\n';
return 0;
}
|
输出:
foo contains:
true
true
false
true
false
⇄ 数据竞争
访问bitset对象。
☂ 异常安全性
强保证:如果抛出异常,bitset对象不会发生任何变化。
如果pos不是一个有效的位位置,则抛出out_of_range。
🍄 另请参阅