Standard library header <codecvt> (C++11) (deprecated in C++17) (removed in C++26)
From cppreference.net
이 헤더는 텍스트 처리 라이브러리 의 일부입니다.
클래스 |
||
|
(C++11)
(C++17에서 사용 중단됨)
(C++26에서 제거됨)
|
UTF-8과 UCS-2/UCS-4 간 변환
(클래스 템플릿) |
|
|
(C++11)
(C++17에서 사용 중단됨)
(C++26에서 제거됨)
|
UTF-16과 UCS-2/UCS-4 간 변환
(클래스 템플릿) |
|
|
(C++11)
(C++17에서 사용 중단됨)
(C++26에서 제거됨)
|
UTF-8과 UTF-16 간 변환
(클래스 템플릿) |
|
|
(C++11)
(C++17에서 사용 중단됨)
(C++26에서 제거됨)
|
표준 codecvt 패싯의 동작을 변경하는 태그
(열거형) |
|
참고 사항
<codecvt>
는 C++17에서 사용 중단(deprecated)되었으며 C++26에서 제거됩니다(
P2871R3
참조).
제거 이유는 이 기능이 더 이상 현재의 Unicode Standard 를 구현하지 않고, 오직 구식 UCS-2 인코딩만 지원하기 때문입니다.
시놉시스
namespace std { enum codecvt_mode { consume_header = 4, generate_header = 2, little_endian = 1 }; template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf8; template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf16; template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf8_utf16; }
클래스 std::codecvt_utf8
namespace std { template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf8 : public codecvt<Elem, char, mbstate_t> { public: explicit codecvt_utf8(size_t refs = 0); ~codecvt_utf8(); }; }
클래스 std::codecvt_utf16
namespace std { template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf16 : public codecvt<Elem, char, mbstate_t> { public: explicit codecvt_utf16(size_t refs = 0); ~codecvt_utf16(); }; }
클래스 std::codecvt_utf8_utf16
namespace std { template<class Elem, unsigned long Maxcode = 0x10ffff, codecvt_mode Mode = (codecvt_mode)0> class codecvt_utf8_utf16 : public codecvt<Elem, char, mbstate_t> { public: explicit codecvt_utf8_utf16(size_t refs = 0); ~codecvt_utf8_utf16(); }; }