std::codecvt::encoding, std::codecvt::do_encoding

来自cppreference.com
< cpp‎ | locale‎ | codecvt

 
 
 
 
定义于头文件 <locale>
public:
int encoding() const
(1)
protected:
int do_encoding() const
(2)
1)
公共成员函数,调用最派生类的成员函数do_encoding.
原文:
public member function, calls the member function do_encoding of the most derived class.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

2) if the encoding represented by this codecvt facet maps each internal character to the same, constant number of external characters, returns that number. If the encoding is variable-length (e.g. UTF-8 or UTF-16), returns 0. If the encoding is state-dependent, returns -1.

目录

[编辑] 返回值

The exact number of externT characters that correspond to one internT character, if constant. 0 if the number varies, -1 if the encoding is state-dependent.

非转换专业化std::codecvt<char, char, std::mbstate_t>回报1
原文:
The non-converting specialization std::codecvt<char, char, std::mbstate_t> returns 1
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 例外

noexcept 规定:  
noexcept
  

[编辑] 示例

#include <locale>
#include <iostream>
int main()
{
    std::cout << "en_US.utf8 is a variable-length encoding, encoding() returns "
              << std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t>>(
                    std::locale("en_US.utf8")
              ).encoding() << '\n';
 
    std::cout << "zh_CN.gb18030 is also variable-length, encoding() == "
              << std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t>>(
                    std::locale("zh_CN.gb18030")
              ).encoding() << '\n';
 
    std::cout << "ru_RU.koi8r is a single-byte encoding encoding() == "
              << std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t>>(
                    std::locale("ru_RU.koi8r")
              ).encoding() << '\n';
}

输出:

en_US.utf8 is a variable-length encoding, encoding() returns 0
zh_CN.gb18030 is also variable-length, encoding() == 0
ru_RU.koi8r is a single-byte encoding encoding() == 1

[编辑] 另请参阅

MB_CUR_MAX
在当前的Clocale
(宏变量)多字节字符的最大字节数
原文:
maximum number of bytes in a multibyte character in the current C locale
(宏变量)
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
[编辑]
返回的最大数目,可以被转换成一个单一的Internt的字符externT字符
原文:
returns the maximum number of externT characters that could be converted into a single internT character
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数) [编辑]