Namespaces
Variants
Views
Actions

std::basic_string

From cppreference.com
 
 
 
std::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 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 [edit]
size_type Unsigned integral type (usually size_t) [edit]
difference_type Signed integer type (usually ptrdiff_t) [edit]
reference Allocator::reference (until C++11)
value_type& (since C++11) [edit]
const_reference Allocator::const_reference (until C++11)
const value_type& (since C++11) [edit]
pointer Allocator::pointer (until C++11)
std::allocator_traits<Allocator>::pointer (since C++11) [edit]
const_pointer Allocator::const_pointer (until C++11)
std::allocator_traits<Allocator>::const_pointer (since C++11) [edit]
iterator RandomAccessIterator [edit]
const_iterator Constant random access iterator [edit]
reverse_iterator std::reverse_iterator<iterator> [edit]
const_reverse_iterator std::reverse_iterator<const_iterator> [edit]

[edit] Member functions

constructs a basic_string
(public member function) [edit]
assigns values to the string
(public member function) [edit]
assign characters to a string
(public member function) [edit]
returns the associated allocator
(public member function) [edit]
Element access
access specified character with bounds checking
(public member function) [edit]
access specified character
(public member function) [edit]
(C++11)
accesses the first character
(public member function) [edit]
(C++11)
accesses the last character
(public member function) [edit]
returns a pointer to the first character of a string
(public member function) [edit]
returns a non-modifiable standard C character array version of the string
(public member function) [edit]
Iterators
returns an iterator to the beginning
(public member function) [edit]

(C++11)
returns an iterator to the end
(public member function) [edit]
returns a reverse iterator to the beginning
(public member function) [edit]
returns a reverse iterator to the end
(public member function) [edit]
Capacity
checks whether the string is empty
(public member function) [edit]
returns the number of characters
(public member function) [edit]
returns the length of the string
(public member function) [edit]
returns the maximum number of characters
(public member function) [edit]
reserves storage
(public member function) [edit]
returns the number of characters that can be held in currently allocated storage
(public member function) [edit]
reduces memory usage by freeing unused memory
(public member function) [edit]
Operations
clears the contents
(public member function) [edit]
inserts characters
(public member function) [edit]
removes characters
(public member function) [edit]
inserts characters to the end
(public member function) [edit]
(C++11)
removes the last character
(public member function) [edit]
appends characters to the end
(public member function) [edit]
appends characters to the end
(public member function) [edit]
compares two strings
(public member function) [edit]
replaces every occurrence of specified characters
(public member function) [edit]
returns a substring
(public member function) [edit]
copies characters
(public member function) [edit]
changes the number of characters stored
(public member function) [edit]
swaps the contents
(public member function) [edit]
Search
find characters in the string
(public member function) [edit]
find the last occurrence of a substring
(public member function) [edit]
find first occurrence of characters
(public member function) [edit]
find first absence of characters
(public member function) [edit]
find last occurrence of characters
(public member function) [edit]
find last absence of characters
(public member function) [edit]

Constants

[static]
special value. The exact meaning depends on the context
(public static member constant) [edit]

[edit] Non-member functions

concatenates two strings or a string and a char
(function template)
lexicographically compares two strings
(function template) [edit]
specializes the std::swap algorithm
(function template) [edit]
Input/output
performs stream I/O on 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) [edit]
(C++11)
(C++11)
converts a string to an unsigned integer
(function) [edit]
(C++11)
(C++11)
(C++11)
converts a string to an floating point value
(function) [edit]
(C++11)
converts an integral or floating point value to string
(function) [edit]
converts an integral or floating point value to wstring
(function) [edit]

[edit] Helper classes

hash support for strings
(class template specialization) [edit]