Strings library

From Cppreference

< cpp
Jump to: navigation, search

Contents

[edit] Null-terminated byte string management

[edit] Null-terminated multibyte string management

[edit] Null-terminated wide string management

[edit] basic_string

Defined in header <string>

template<

    class CharT,
    class Traits = std::char_traits<CharT>,
    class Allocator = std::allocator<CharT> >

> class basic_string;

The class basic_string generalizes the way how sequences of characters are manipulated and stored.

Several specializations of the class basic_string are provided:

Defined in header <string>
Type Definition
string basic_string<char>
wstring basic_string<wchar_t>
u16string basic_string<char16_t>
u32string basic_string<char32_t>

[edit] Hash support

The following specializations of class template hash are defined. These specializations provide hash support for default string types.

Defined in header <string>

template<> class hash<std::string>;

template<> class hash<std::wstring>;
template<> class hash<std::u16string>;

template<> class hash<std::u32string>;
(since C++11)
(since C++11)
(since C++11)
(since C++11)

[edit] char_traits

Strings library provides class template char_traits, defining types and functions for a character container. The following specializations are defined:

Defined in header <string>

template<> class char_traits<std::string>;

template<> class char_traits<std::wstring>;
template<> class char_traits<std::u16string>;

template<> class char_traits<std::u32string>;


(since C++11)
(since C++11)