Using the string class as a container
C++ strings are based on the basic_string
template class. This class is a container, so it uses iterator access and methods to obtain information, and has template parameters that contain information about the character type it holds. There are different typedef
for specific character types:
typedef basic_string<char, char_traits<char>, allocator<char> > string; typedef basic_string<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wstring; typedef basic_string<char16_t, char_traits<char16_t>, allocator<char16_t> > u16string; typedef basic_string<char32_t, char_traits<char32_t>, allocator<char32_t> > u32string;
The string
class is based on char
, wstring
is based on wchar_t
wide characters, and the 16string
and u32string
classes are based upon 16-bit and 32-bit characters, respectively. For the rest of the chapter, we will concentrate...