wstring_convert 클래스
클래스 템플릿 wstring_convert
은 와이드 문자열과 바이트 문자열 간의 변환을 수행합니다.
구문
template <class Codecvt, class Elem = wchar_t>
class wstring_convert
매개 변수
Codecvt
변환 개체를 나타내는 locale 패싯입니다.
Elem
와이드 문자 요소 형식입니다.
설명
클래스 템플릿은 클래스의 와이드 문자열 개체와 클래스 std::basic_string<Elem>
의 바이트 문자열 개체(라고도 함std::string
) 간의 변환을 제어하는 개체를 설명합니다 std::basic_string<char>
. 클래스 템플릿은 형식 wide_string
을 정의하고 byte_string
이러한 두 형식의 동의어로 정의합니다. Elem
값(wide_string
개체에 저장) 시퀀스와 멀티바이트 시퀀스(byte_string
개체에 저장) 간의 변환은 표준 코드 변환 패싯 std::codecvt<Elem, char, std::mbstate_t>
의 요구 사항을 충족하는 Codecvt<Elem, char, std::mbstate_t>
클래스의 개체에 의해 수행됩니다.
이 클래스 템플릿의 개체는 다음을 저장합니다.
오류 발생 시 표시할 바이트 문자열
오류 발생 시 표시할 와이드 문자열
할당된 변환 개체에 대한 포인터(wbuffer_convert 개체가 제거될 때 해제됨)
state_type 형식의 변환 상태 개체
변환 개수
생성자
생성자 | Description |
---|---|
wstring_convert | wstring_convert 형식의 개체를 생성합니다. |
Typedef
형식 이름 | 설명 |
---|---|
byte_string | 바이트 문자열을 나타내는 형식입니다. |
wide_string | 와이드 문자열을 나타내는 형식입니다. |
state_type | 변환 상태를 나타내는 형식입니다. |
int_type | 정수를 나타내는 형식입니다. |
멤버 함수
멤버 함수 | 설명 |
---|---|
from_bytes | 바이트 문자열을 와이드 문자열로 변환합니다. |
to_bytes | 와이드 문자열을 바이트 문자열로 변환합니다. |
converted | 성공적인 변환 수를 반환합니다. |
state | 변환의 상태를 나타내는 개체를 반환합니다. |
요구 사항
헤더:<로캘>
네임스페이스: std
wstring_convert::byte_string
바이트 문자열을 나타내는 형식입니다.
typedef std::basic_string<char> byte_string;
설명
이 형식은 std::basic_string<char>
의 동의어입니다.
wstring_convert::converted
성공적인 변환 수를 반환합니다.
size_t converted() const;
Return Value
성공적인 변환 수입니다.
설명
성공적인 변환 수가 변환 개수 개체에 저장됩니다.
wstring_convert::from_bytes
바이트 문자열을 와이드 문자열로 변환합니다.
wide_string from_bytes(char Byte);
wide_string from_bytes(const char* ptr);
wide_string from_bytes(const byte_string& Bstr);
wide_string from_bytes(const char* first, const char* last);
매개 변수
Byte
변환할 단일 요소 바이트 시퀀스입니다.
ptr
변환할 C 스타일의 null 종료 문자 시퀀스입니다.
Bstr
변환할 byte_string입니다.
first
변환할 문자 범위의 첫 문자입니다.
last
변환할 문자 범위의 마지막 문자입니다.
Return Value
변환에서 생성되는 와이드 문자열 개체입니다.
설명
변환 상태 개체가 명시적 값으로 생성되지 않은 경우 변환이 시작되기 전에 기본값(초기 변환 상태)으로 설정됩니다. 그렇지 않으면 변경되지 않습니다.
성공적으로 변환된 입력 요소 수는 변환 개수 개체에 저장됩니다. 변환 오류가 발생하지 않는 경우 멤버 함수는 변환된 와이드 문자열을 반환합니다. 오류가 발생하는 경우, 와이드 문자열 오류 메시지에 대한 이니셜라이저를 사용하여 생성된 개체라면 멤버 함수는 와이드 문자열 오류 메시지 개체를 반환합니다. 그렇지 않으면 구성원 함수가 range_error 클래스의 개체를 발생시킵니다.
wstring_convert::int_type
정수를 나타내는 형식입니다.
typedef typename wide_string::traits_type::int_type int_type;
설명
이 형식은 wide_string::traits_type::int_type
의 동의어입니다.
wstring_convert::state
변환의 상태를 나타내는 개체를 반환합니다.
state_type state() const;
Return Value
변환 상태를 나타내는 변환 상태 개체입니다.
설명
wstring_convert::state_type
변환 상태를 나타내는 형식입니다.
typedef typename Codecvt::state_type state_type;
설명
형식은 변환 상태를 나타낼 수 있는 개체에 대해 설명합니다. 이 형식은 Codecvt::state_type
의 동의어입니다.
wstring_convert::to_bytes
와이드 문자열을 바이트 문자열로 변환합니다.
byte_string to_bytes(Elem Char);
byte_string to_bytes(const Elem* Wptr);
byte_string to_bytes(const wide_string& Wstr);
byte_string to_bytes(const Elem* first, const Elem* last);
매개 변수
Char
변환할 와이드 문자입니다.
Wptr
변환할 null로 끝나는 시퀀스로, wptr
에서 시작되며 C 스타일입니다.
Wstr
변환할 wide_string입니다.
first
변환할 요소의 범위에서 첫 번째 요소입니다.
last
변환할 요소의 범위에서 마지막 요소입니다.
설명
변환 상태 개체가 명시적 값으로 생성되지 않은 경우 변환이 시작되기 전에 기본값(초기 변환 상태)으로 설정됩니다. 그렇지 않으면 변경되지 않습니다.
성공적으로 변환된 입력 요소 수는 변환 개수 개체에 저장됩니다. 변환 오류가 발생하지 않는 경우 멤버 함수는 변환된 바이트 문자열을 반환합니다. 오류가 발생하는 경우, 바이트 문자열 오류 메시지에 대한 이니셜라이저를 사용하여 생성된 개체라면 멤버 함수는 바이트 문자열 오류 메시지 개체를 반환합니다. 그렇지 않으면 구성원 함수가 range_error 클래스의 개체를 발생시킵니다.
wstring_convert::wide_string
와이드 문자열을 나타내는 형식입니다.
typedef std::basic_string<Elem> wide_string;
설명
이 형식은 std::basic_string<Elem>
의 동의어입니다.
wstring_convert::wstring_convert
wstring_convert
형식의 개체를 생성합니다.
wstring_convert(Codecvt *Pcvt = new Codecvt);
wstring_convert(Codecvt *Pcvt, state_type _State);
wstring_convert(const byte_string& _Berr, const wide_string& Werr = wide_string());
매개 변수
*Pcvt
변환을 수행할 Codecvt
형식의 개체입니다.
_상태
변환 상태를 나타내는 state_type 형식의 개체입니다.
_Berr
오류 시에 표시할 byte_string입니다.
Werr
오류 시에 표시할 wide_string입니다.
설명
첫 번째 생성자는 변환 개체에 Pcvt_arg를 저장합니다.