std::basic_string::basic_string

From Cppreference

Jump to: navigation, search
explicit basic_string( const Allocator& alloc = Allocator() );
(1)
basic_string( size_type count,

              CharT ch,

              const Allocator& alloc = Allocator() );
(2)
basic_string( const basic_string& other,

              size_type pos,
              size_type count = npos,

              const Allocator& alloc = Allocator() );
(3)
basic_string( const CharT* s,

              size_type count,

              const Allocator& alloc = Allocator() );
(4)
basic_string( const CharT* s,
              const Allocator& alloc = Allocator() );
(5)
template< class InputIterator >

basic_string( InputIterator first, InputIterator last,

              const Allocator& alloc = Allocator() );
(6)
basic_string( const basic_string& other );
(7)
basic_string( const basic_string& other, const Allocator& alloc );
(7) (C++11 feature)
basic_string( basic_string&& other )
(8) (C++11 feature)
basic_string( basic_string&& other, const Allocator& alloc );
(8) (C++11 feature)
basic_string( std::initializer_list<CharT> init,
              const Allocator& alloc = Allocator() );
(9) (C++11 feature)

Constructs new string from a variety of data sources and optionally using user supplied allocator alloc.

1) Default constructor. Constructs empty string.

2) Constructs the string with count copies of character ch.

3) Constructs the string with a substring [pos, pos+count) of other. If the requested substring lasts past the end of the string, or if count == npos, the resulting substring is [pos, size()). If pos >= other.size(), std::out_of_range is thrown.

4) Constructs the string with the first count characters of character string pointed to by s. s can contain null characters.

5) Constructs the string with the contents of null-terminated character string pointed to by s. The length of the string is determined by the first null character.

6) Constructs the string with the contents of the range [first, last).

7) Copy constructor. Constructs the string with the copy of the contents of other.

8) Move constructor. Constructs the string with the contents of other using move semantics.

9) Constructs the string with the contents of the initializer list init.

Contents

[edit] Parameters

alloc - allocator to use for all memory allocations of this string
count - size of the resulting string
ch - value to initialize the string with
first, last - range to copy the characters from
s - pointer to a character string to use
as source to initialize the string with
other - another string to use as source to initialize the string with
init - initializer list to initialize the string with

[edit] Complexity

1) constant

2-4) linear in count

5) linear in length of s

6) linear in distance between first and last

7) linear in size of other

8) constant. If alloc is given and alloc != other.get_allocator(), then linear.

9) linear in size of init

[edit] Example

[edit] See also

assign
assign characters to a string
(public member function)
operator=
assigns values to the string
(public member function)