std::bitset<N>:: to_string
| (1) | ||
|
template
<
class
CharT,
class
Traits,
class
Allocator
>
std::
basic_string
<
CharT, Traits, Allocator
>
|
(C++11 이전) | |
|
template
<
class
CharT
=
char
,
|
(C++11 이후)
(C++23 이후 constexpr) |
|
|
template
<
class
CharT,
class
Traits
>
std::
basic_string
<
CharT, Traits
>
|
(2) | (C++11 이전) |
|
template
<
class
CharT
>
std::
basic_string
<
CharT
>
to_string
(
CharT zero
=
CharT
(
'0'
)
,
|
(3) | (C++11 이전) |
|
std::
string
to_string
(
char
zero
=
'0'
,
char
one
=
'1'
)
const
;
|
(4) | (C++11 이전) |
비트셋의 내용을 문자열로 변환합니다. 값이 zero 인 비트는 false 를 나타내고, 값이 one 인 비트는 true 를 나타냅니다.
결과 문자열은 N 개의 문자를 포함하며, 첫 번째 문자는 마지막 ( N - 1 th ) 비트에 해당하고 마지막 문자는 첫 번째 비트에 해당합니다.
|
함수 템플릿은 기본 템플릿 인자를 가질 수 없으므로 모든 템플릿 타입 인자를 제공해야 합니다.
2)
기본 할당자
std::allocator
를 사용합니다.
|
(until C++11) |
목차 |
매개변수
| zero | - | false 를 나타내는 데 사용할 문자 |
| one | - | true 를 나타내는 데 사용할 문자 |
반환값
예외
std::bad_alloc 생성자로부터 std::basic_string 예외를 발생시킬 수 있습니다.
참고 사항
C++11부터 함수 템플릿은 기본 템플릿 인자를 가질 수 있습니다. LWG issue 1113 은 헬퍼 오버로드 ( 2-4 ) 를 제거하고 해당 기본 템플릿 인자들을 ( 1 ) 에 추가했습니다.
예제
#include <bitset> #include <iostream> int main() { std::bitset<8> b{42}; std::cout << b.to_string() << '\n' << b.to_string('*') << '\n' << b.to_string('O', 'X') << '\n'; }
출력:
00101010 **1*1*1* OOXOXOXO
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 수정된 동작 |
|---|---|---|---|
| LWG 396 | C++98 |
0과 1 비트가 문자
0
와 1 로 변환됨 (이는 '0' 와 '1' 에 해당하지 않음) |
이러한 문자들을 제공하기 위한
매개변수 추가 |
| LWG 434 | C++98 | 모든 템플릿 인자를 제공해야 했음 | 오버로드 추가 ( 2-4 ) |
| LWG 853 | C++98 |
오버로드
(
2-4
)
에
LWG 이슈 396
에 의해 추가된
기본 인자가 없었음 |
동일하게 추가 |
참고 항목
|
데이터의
unsigned
long
정수 표현을 반환합니다
(public member function) |
|
|
(C++11)
|
데이터의
unsigned
long
long
정수 표현을 반환합니다
(public member function) |