std::bitset::operator[]

来自cppreference.com
< cpp‎ | utility‎ | bitset
 
 
工具库
类型支持(基本类型、 RTTI 、类型特性)
动态内存管理
错误处理
程序工具
变参数函数
日期和时间
函数对象
(C++11)
关系运算符
optionalanyvariant (C++17)
pair 与 tuple
(C++11)
(C++17)
swap 、 forward 与 move
(C++14)
(C++11)
(C++11)
初等字符串转换
(C++17)
(C++17)
类型运算
(C++11)
(C++17)
 
 
(1)
bool operator[]( std::size_t pos ) const;
(C++11 前)
constexpr bool operator[]( std::size_t pos ) const;
(C++11 起)
reference operator[]( std::size_t pos );
(2)

访问位于位置 pos 的位。首版本返回位的值,第二版本返回允许修改位的值的 std::bitset::reference 对象。

不同于 test() ,它不抛异常:若 pos 在边界外则行为未定义。

目录

[编辑] 参数

pos - 要返回的位的位置

[编辑] 返回值

1) 请求位的值

2) std::bitset::reference 类型对象,允许写入请求位。

[编辑] 异常

(无)

[编辑] 示例

#include <iostream>
#include <bitset>
 
int main()
{
    std::bitset<8> b1(42);
    for (std::size_t i = 0; i < b1.size(); ++i) {
        std::cout << "b1[" << i << "]: " << b1[i] << '\n';
    }
    b1[0] = true; // 通过 bitset::reference 修改首位
    std::cout << "After setting bit 0, the bitset holds " << b1 << '\n';
}

输出:

b1[0]: 0
b1[1]: 1
b1[2]: 0
b1[3]: 1
b1[4]: 0
b1[5]: 1
b1[6]: 0
b1[7]: 0
After setting bit 0, the bitset holds 00101011

[编辑] 参阅

访问特定位
(公开成员函数) [编辑]