std::basic_string
From Cppreference
Defined in header <string>
|
||
template<
class CharT, |
||
The class template basic_string stores and manipulates sequences of char-like objects (that is, objects for which a specialization of std::char_traits or compatible traits class is provided).
The elements of a basic_string are stored contiguously, that is, for a basic_string s, &*(s.begin() + n) == &*s.begin() + n for any n in [0, s.size()), or, equivalently, a pointer to s[0] can be passed to functions that expect a pointer to the first element of a charT[] array. (since C++11)
Several specializations for common character types are provided:
Defined in header <ostream>
| |
Type | Definition |
string | basic_string<char> |
wstring | basic_string<wchar_t> |
u16string | basic_string<char16_t> |
u32string | basic_string<char32_t> |
Contents |
[edit] Member types
Member type | Definition |
traits_type | Traits |
value_type | Traits::char_type |
allocator_type | Allocator |
size_type | Unsigned integral type (usually size_t) |
difference_type | Signed integer type (usually ptrdiff_t) |
reference | Allocator::reference (until C++11) value_type& (since C++11) |
const_reference | Allocator::const_reference (until C++11) const value_type& (since C++11) |
pointer | T* (until C++11) std::allocator_traits<Allocator>::pointer (since C++11) |
const_pointer | const T* (until C++11) std::allocator_traits<Allocator>::const_pointer (since C++11) |
iterator | Random access iterator |
const_iterator | Constant random access iterator |
reverse_iterator
|
std::reverse_iterator<iterator> |
const_reverse_iterator
|
std::reverse_iterator<const_iterator> |
[edit] Member functions
constructs the basic_string (public member function) |
|
assigns values to the string (public member function) |
|
assign characters to a string (public member function) |
|
returns the associated allocator (public member function) |
|
Element access | |
access specified character with bounds checking (public member function) |
|
access specified character (public member function) |
|
(C++11)
|
accesses the first character (public member function) |
(C++11)
|
accesses the last character (public member function) |
returns a pointer to the first character of a string (public member function) |
|
returns a non-modifiable standard C character array version of the string (public member function) |
|
Iterators | |
(C++11) |
returns an iterator to the beginning (public member function) |
(C++11) |
returns an iterator to the end (public member function) |
(C++11) |
returns a reverse iterator to the beginning (public member function) |
(C++11) |
returns a reverse iterator to the end (public member function) |
Capacity | |
checks whether the string is empty (public member function) |
|
returns the number of characters (public member function) |
|
returns the length of the string (public member function) |
|
returns the maximum number of characters (public member function) |
|
reserves storage (public member function) |
|
returns the number of characters that can be held in currently allocated storage (public member function) |
|
(C++11)
|
reduces memory usage by freeing unused memory (public member function) |
Operations | |
clears the contents (public member function) |
|
inserts characters (public member function) |
|
removes characters (public member function) |
|
inserts characters to the end (public member function) |
|
(C++11)
|
removes the last character (public member function) |
appends characters to the end (public member function) |
|
appends characters to the end (public member function) |
|
compares two strings (public member function) |
|
replaces every occurrence of specified characters (public member function) |
|
returns a substring (public member function) |
|
copies characters (public member function) |
|
changes the number of characters stored (public member function) |
|
swaps the contents (public member function) |
|
Search | |
find characters in the string (public member function) |
|
find the last occurrence of a substring (public member function) |
|
find first occurrence of characters (public member function) |
|
find first absence of characters (public member function) |
|
find last occurrence of characters (public member function) |
|
find last absence of characters (public member function) |
|
Constants | |
[static]
|
special value. The exact meaning depends on the context (public static member constant) |
[edit] Non-member functions
concatenates two strings or a string and a char (function template) |
|
lexicographically compares two strings (function template) |
|
specializes the std::swap algorithm (function template) |
|
Input/output | |
performs stream I/O of strings (function template) |
|
read data from an I/O stream into a string (function) |
|
Numeric conversions | |
(C++11)
(C++11) (C++11) |
converts a string to an signed integer (function) |
(C++11)
(C++11) |
converts a string to an unsigned integer (function) |
(C++11)
(C++11) (C++11) |
converts a string to an floating point value (function) |
(C++11)
|
converts an integral or floating point value to string (function) |
(C++11)
|
converts an integral or floating point value to wstring (function) |
[edit] Helper classes
(C++11)
(C++11) (C++11) (C++11) |
hash support for strings (class template specialization) |