length
描述 (Description)
它返回外部字符所需的最大内部字符数,并且在内部,此函数只调用虚拟受保护成员do_max_length来生成其结果。
声明 (Declaration)
以下是std :: ctype :: max_length的声明。
C++98
int max_length() const throw();
C++11
int max_length() const noexcept;
参数 (Parameters)
没有
返回值 (Return Value)
如果转换为内部字符,它将返回一个外部字符的最大长度。
异常 (Exceptions)
No-throw guarantee - 即使抛出异常,也不会抛出异常,facet对象中没有变化。
数据竞争 (Data races)
访问构面对象。
例子 (Example)
在下面的例子中解释了std :: ctype :: max_length。
#include <iostream>
#include <locale>
int main () {
std::locale loc;
std::cout << "max_length for codecvt<char,char,mbstate_t>: ";
std::cout << std::use_facet<std::codecvt<char,char,mbstate_t> >(loc).max_length();
std::cout << '\n';
std::cout << "max_length for codecvt<wchar_t,char,mbstate_t>: ";
std::cout << std::use_facet<std::codecvt<wchar_t,char,mbstate_t> >(loc).max_length();
std::cout << '\n';
return 0;
}
让我们编译并运行上面的程序,这将产生以下结果 -
max_length for codecvt<char,char,mbstate_t>: 1
max_length for codecvt<wchar_t,char,mbstate_t>: 1