std::basic_string

From Cppreference

Jump to: navigation, search
Defined in header <string>

template<

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

> class basic_string;

The class template basic_string stores and manipulates sequences of characters.

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 (pre-C++11 version)
value_type& (C++11 version)
const_reference Allocator::const_reference (pre-C++11 version)
const value_type& (C++11 version)
pointer T* (pre-C++11 version)
std::allocator_traits<Allocator>::pointer (C++11 version)
const_pointer const T* (pre-C++11 version)
std::allocator_traits<Allocator>::const_pointer (C++11 version)
iterator Random access iterator
const_iterator Constant random access iterator
reverse_iterator std::reverse_iterator<iterator>
const_reverse_iterator std::reverse_iterator<const_iterator>

Member functions

(constructor)
constructs the basic_string
(public member function)
operator=
assigns values to the string
(public member function)
assign
assign characters to a string
(public member function)
get_allocator
returns the associated allocator
(public member function)
Element access
at
access specified character with bounds checking
(public member function)
operator[]
access specified character
(public member function)
front (C++11)
accesses the first character
(public member function)
back (C++11)
accesses the last character
(public member function)
data
returns a pointer to the first character of a string
(public member function)
c_str
returns a non-modifiable standard C character array version of the string
(public member function)
Iterators
begin
cbegin
returns an iterator to the beginning
(public member function)
end
cend
returns an iterator to the end
(public member function)
rbegin
crbegin
returns a reverse iterator to the beginning
(public member function)
rend
crend
returns a reverse iterator to the end
(public member function)
Capacity
empty
checks whether the string is empty
(public member function)
size
returns the number of characters
(public member function)
length
returns the length of the string
(public member function)
max_size
returns the maximum number of characters
(public member function)
reserve
reserves storage
(public member function)
capacity
returns the number of characters that can be held in currently allocated storage
(public member function)
shrink_to_fit
reduces memory usage by freeing unused memory
(public member function)
Operations
clear
clears the contents
(public member function)
insert
inserts characters
(public member function)
erase
removes characters
(public member function)
push_back
inserts characters to the end
(public member function)
pop_back
removes the last character
(public member function)
append
appends characters to the end
(public member function)
compare
compares two strings
(public member function)
replace
replaces every occurrence of specified characters
(public member function)
substr
returns a substring
(public member function)
copy
copies characters
(public member function)
resize
changes the number of characters stored
(public member function)
swap
swaps the contents
(public member function)
Search
find
find characters in the string
(public member function)
rfind
find the last occurrence of a substring
(public member function)
find_first_of
find first occurrence of characters
(public member function)
find_first_not_of
find first absence of characters
(public member function)
find_last_of
find last occurrence of characters
(public member function)
find_last_not_of
find last absence of characters
(public member function)

Constants

npos
special value. The exact meaning depends on the context
(public static member constant)
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox
In other languages