---
name: "std::__debug::bitset"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/std::__debug::bitset"
---

# std::\_\_debug::bitset(3)

Class std::bitset with additional safety/checking/debug instrumentation.

## NAME

std::\_\_debug::bitset\< \_Nb \> - Class std::bitset with additional safety/checking/debug instrumentation.

## SYNOPSIS

\#include \<bitset\>

### Public Types

typedef \_Base::reference **reference**\

### Public Member Functions

constexpr **bitset** (const \_Base &\_\_x)\
 template\<typename \_CharT, typename = \_Require\<is\_trivially\_copyable\<\_CharT\>,				   is\_standard\_layout\<\_CharT\>,				   is\_trivially\_default\_constructible\<\_CharT\>,				   \_\_not\_\<is\_array\<\_CharT\>\>\>\> constexpr **bitset** (const \_CharT \*\_\_str, typename **std::basic\_string**\< \_CharT \>**::size\_type** \_\_n=**std::basic\_string**\< \_CharT \>::npos, \_CharT \_\_zero=\_CharT('0'), \_CharT \_\_one=\_CharT('1'))\
 template\<class \_CharT, class \_Traits, class \_Alloc\> constexpr **bitset** (const **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \> &\_\_str, typename **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \>**::size\_type** \_\_pos, typename **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \>**::size\_type** \_\_n, \_CharT \_\_zero, \_CharT \_\_one=\_CharT('1'))\
 template\<typename \_CharT, typename \_Traits, typename \_Alloc\> constexpr **bitset** (const **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \> &\_\_str, typename **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \>**::size\_type** \_\_pos=0, typename **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \>**::size\_type** \_\_n=(**std::basic\_string**\< \_CharT, \_Traits, \_Alloc \>::npos))\
 constexpr **bitset** (unsigned long long \_\_val) noexcept\
 constexpr const \_Base & **\_M\_base** () const noexcept\
 constexpr \_Base & **\_M\_base** () noexcept\
 constexpr bitset\< \_Nb \> & **flip** () noexcept\
 constexpr bitset\< \_Nb \> & **flip** (size\_t \_\_pos)\
 constexpr bitset\< \_Nb \> & **operator&=** (const bitset\< \_Nb \> &\_\_rhs) noexcept\
 constexpr bitset\< \_Nb \> **operator\<\<** (size\_t \_\_pos) const noexcept\
 constexpr bitset\< \_Nb \> & **operator\<\<=** (size\_t \_\_pos) noexcept\
 constexpr bool **operator==** (const bitset\< \_Nb \> &\_\_rhs) const noexcept\
 constexpr bitset\< \_Nb \> **operator\>\>** (size\_t \_\_pos) const noexcept\
 constexpr bitset\< \_Nb \> & **operator\>\>=** (size\_t \_\_pos) noexcept\
 constexpr reference **operator\[\]** (size\_t \_\_pos)\
 constexpr bool **operator\[\]** (size\_t \_\_pos) const\
 constexpr bitset\< \_Nb \> & **operator^=** (const bitset\< \_Nb \> &\_\_rhs) noexcept\
 constexpr bitset\< \_Nb \> & **operator\|=** (const bitset\< \_Nb \> &\_\_rhs) noexcept\
 constexpr bitset\< \_Nb \> **operator~** () const noexcept\
 constexpr bitset\< \_Nb \> & **reset** () noexcept\
 constexpr bitset\< \_Nb \> & **reset** (size\_t \_\_pos)\
 constexpr bitset\< \_Nb \> & **set** () noexcept\
 constexpr bitset\< \_Nb \> & **set** (size\_t \_\_pos, bool \_\_val=true)\
 constexpr **std::basic\_string**\< char, **std::char\_traits**\< char \>, **std::allocator**\< char \> \> **to\_string** () const\
 template\<typename \_CharT\> constexpr **std::basic\_string**\< \_CharT, **std::char\_traits**\< \_CharT \>, **std::allocator**\< \_CharT \> \> **to\_string** () const\
 template\<typename \_CharT, typename \_Traits\> constexpr **std::basic\_string**\< \_CharT, \_Traits, **std::allocator**\< \_CharT \> \> **to\_string** () const\
 template\<typename \_CharT, typename \_Traits, typename \_Alloc\> constexpr **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \> **to\_string** () const\
 template\<class \_CharT\> constexpr **std::basic\_string**\< \_CharT, **std::char\_traits**\< \_CharT \>, **std::allocator**\< \_CharT \> \> **to\_string** (\_CharT \_\_zero, \_CharT \_\_one=\_CharT('1')) const\
 template\<class \_CharT, class \_Traits\> constexpr **std::basic\_string**\< \_CharT, \_Traits, **std::allocator**\< \_CharT \> \> **to\_string** (\_CharT \_\_zero, \_CharT \_\_one=\_CharT('1')) const\
 template\<class \_CharT, class \_Traits, class \_Alloc\> constexpr **std::basic\_string**\< \_CharT, \_Traits, \_Alloc \> **to\_string** (\_CharT \_\_zero, \_CharT \_\_one=\_CharT('1')) const\
 constexpr **std::basic\_string**\< char, **std::char\_traits**\< char \>, **std::allocator**\< char \> \> **to\_string** (char \_\_zero, char \_\_one='1') const\

## Detailed Description

### template\<size\_t \_Nb\>

class std::\_\_debug::bitset\< \_Nb \>"Class std::bitset with additional safety/checking/debug instrumentation.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
