Home C&C++函数库 c++ 语法 程序源码 Linux C库

std::

bitset::set

公众成员函数  <bitset>

C++98; all bits (1)
bitset& set();
single bit (2)
bitset& set (size_t pos, bool val = true);
C++11; all bits (1)
bitset& set() noexcept;
single bit (2)
bitset& set (size_t pos, bool val = true);

设置bit位
设置bit位:
(1) all bits
将bitset中的所有位设置为1。

(2) single bit
设置val为pos位置的bit的值。

☲  参数


pos
被修改的位的顺序位置。
顺序位置从最右位开始计数,即顺序位置0。
如果pos等于或大于bitset size,则抛出out_of_range异常。
Size_t是一个无符号整型。

val
要存储在bit中的值(1为真,0为假)。

☉  返回值



*this

☣  示例



// bitset::set
#include <iostream>       // std::cout
#include <bitset>         // std::bitset

int main ()
{
  std::bitset<4> foo;

  std::cout << foo.set() << '\n';       // 1111
  std::cout << foo.set(2,0) << '\n';    // 1011
  std::cout << foo.set(2) << '\n';      // 1111

  return 0;
}

输出:
1111
1011
1111

⇄ 数据竞争


bitset和它的bits都被修改。

☂ 异常安全性



对于(1):它从不抛出异常(无抛出保证)。
对于(2):在异常的情况下,该对象处于有效状态(基本保证)。
如果pos等于或大于bitset大小,函数将抛出out_of_range异常。

🍄  另请参阅



bitset::reset 重置bit(公共成员函数)
bitset::flip 反转bit(公共成员函数)

联系我们 免责声明 关于CandCplus 网站地图