C++ Bitset 库 - bitset() 函数


描述

C++ 构造函数std::bitset::bitset()从 C++ 字符串对象构造并初始化一个位集容器。

宣言

以下是 std::bitset::bitset() 构造函数的声明,形式为 std::bitset 标头。

C++98

template<class charT, class traits, class Alloc>
explicit bitset (const basic_string<charT,traits,Alloc>& str,
                 typename basic_string<charT,traits,Alloc>::size_type pos = 0,
                 typename basic_string<charT,traits,Alloc>::size_type n =
                 basic_string<charT,traits,Alloc>::npos
                 );

C++11

template <class charT, class traits, class Alloc>
explicit bitset (const basic_string<charT,traits,Alloc>& str,
                 typename basic_string<charT,traits,Alloc>::size_type pos = 0,
                 typename basic_string<charT,traits,Alloc>::size_type n =
                 basic_string<charT,traits,Alloc>::npos,
                 charT zero = charT('0'), charT one = charT('1')
                 );

参数

  • str - 用于初始化位集的字符串。

  • pos - str的起始偏移量。

  • n - str中的字符数。

返回值

构造函数永远不会返回值。

例外情况

如果pos > str.size() 则方法抛出out_of_range异常。

例子

以下示例显示了 std::bitset::bitset() 构造函数的用法。

#include <iostream>
#include <bitset>
#include <string>

using namespace std;

int main(void) {
   string s = "1100";
   bitset<4>b(s);

   cout << b << endl;

   return 0;
}

让我们编译并运行上面的程序,这将产生以下结果 -

1100
位集.htm