template < class charT, class traits = char_traits<charT>, // basic_string::traits_type class Alloc = allocator<charT> // basic_string::allocator_type > class basic_string;
| 成员类型 | 定义 | 说明 |
|---|---|---|
| traits_type | 第二个模板参数 (特性 (traits)) | 默认为char_traits<charT> |
| allocator_type | 第三个模板参数 (Alloc) | 默认为allocator<charT> |
| value_type | traits_type::char_type | 应与charT |
| 引用 | allocator_type::reference | 对于默认的 allocatorcharT& |
| const_reference | allocator_type::const_reference | 对于默认的 allocatorconst charT& |
| 指针 | allocator_type::pointer | 对于默认的 allocatorcharT* |
| const_pointer | allocator_type::const_pointer | 对于默认的 allocatorconst charT* |
| iterator | 一个指向charT | 的 随机访问迭代器,可转换为const_iterator |
| const_iterator | 一个指向const charT | |
| reverse_iterator | reverse_iterator<iterator> | |
| const_reverse_iterator | reverse_iterator<const_iterator> | |
| difference_type | allocator_type::difference_type | 相同,通常与 ptrdiff_t 一样 |
| size_type | allocator_type::size_type | 的无符号整数类型,通常与 size_t 一样 |
| 成员类型 | 定义 | 说明 |
|---|---|---|
| traits_type | 第二个模板参数 (特性 (traits)) | 默认为char_traits<charT> |
| allocator_type | 第三个模板参数 (Alloc) | 默认为allocator<charT> |
| value_type | traits_type::char_type | 应与charT |
| 引用 | value_type& | |
| const_reference | const value_type& | |
| 指针 | allocator_traits<allocator_type>::pointer | 对于默认的 allocatorcharT* |
| const_pointer | allocator_traits<allocator_type>::const_pointer | 对于默认的 allocatorconst charT* |
| iterator | 一个指向charT | 的 随机访问迭代器,可转换为const_iterator |
| const_iterator | 一个指向const charT | |
| reverse_iterator | reverse_iterator<iterator> | |
| const_reverse_iterator | reverse_iterator<const_iterator> | |
| difference_type | allocator_traits<allocator_type>::difference_type | 相同,通常与 ptrdiff_t 一样 |
| size_type | allocator_traits<allocator_type>::size_type | 的无符号整数类型,通常与 size_t 一样 |