std::collate_byname
在标头
<locale>
定义
|
||
template<
class
CharT >
class collate_byname : public std::collate<CharT>; |
||
std::collate_byname
是封装本地环境限定对照(比较)和字符串哈希的 std::collate
平面。正如同 std::collate,它可以浸染于
std::regex,并以
std::locale::operator()
直接应用到所有期待字符串比较谓词的标准算法。
特化
标准库保证提供以下特化:
在标头
<locale>
定义 |
|
std::collate_byname<char> | 多字节字符串的本地环境限定对照 |
std::collate_byname<wchar_t> | 宽字符串的本地环境限定对照 |
成员函数
(构造函数)
|
构造新的 collate_byname 平面 (公开成员函数) |
(析构函数)
|
析构 collate_byname 平面 (受保护成员函数) |
std::collate_byname::collate_byname
explicit
collate_byname(
const
char*
name, std::size_t
refs =
0
);
|
||
explicit
collate_byname(
const
std::string&
name, std::size_t
refs =
0
);
|
(C++11 起) | |
为名为 name
的本地环境构造新的 std::collate_byname
平面。
refs 用于资源管理:在销毁最后一个保有平面的 std::locale 对象时,如果 refs == 0,那么实现会销毁平面对象。否则不销毁对象。
参数
name | - | 本地环境的名称 |
refs | - | 链接到该平面的引用数 |
std::collate_byname::~collate_byname
protected:
~collate_byname(); |
||
销毁平面。
继承自 std::collate
成员类型
成员类型 | 定义 |
char_type
|
CharT
|
string_type
|
std::basic_string<CharT> |
成员函数
调用 do_compare ( std::collate<CharT>
的公开成员函数) |
|
调用 do_transform ( std::collate<CharT>
的公开成员函数) |
|
调用 do_hash ( std::collate<CharT>
的公开成员函数) |
受保护成员函数
[虚]
|
用此平面的对照规则比较二个字符串 ( std::collate<CharT>
的虚受保护成员函数) |
[虚]
|
变换字符串,使得能用比较替换对照 ( std::collate<CharT>
的虚受保护成员函数) |
[虚]
|
生成使用此平面对照规则的整数哈希值 ( std::collate<CharT>
的虚受保护成员函数) |
注意
对照顺序为字典顺序:国家字母表(其等价类)中字母的位置拥有高于其大小写或变体的优先级。在等价类内,小写字符先于其大写等价物对照,而且本地环境限定的顺序可能应用到有发音符号的字符。一些本地环境中,字符组作为单个对照单元比较。例如, "ch" 在捷克语中后随 "h" 而前趋 "i" , "dzs" 在匈牙利语中后随 "dz" 而前趋 "g" 。
示例
本节未完成 原因:暂无示例 |
参阅
定义字典序比较和字符串的散列 (类模板) |
|
按照当前本地环境比较两个字符串 (函数) |
|
按照当前本地环境比较两个宽字符串 (函数) |
|
用此 locale 的 collate 刻面以字典序比较两个字符串 ( std::locale
的公开成员函数) |