Пространства имён
Варианты
Действия

std::basic_string::basic_string

Материал из cppreference.com
< cpp‎ | string‎ | basic string
 
 
 
std::basic_string
Функции-члены
basic_string::basic_string
basic_string::operator=
basic_string::assign
basic_string::get_allocator
Доступ к элементам
basic_string::at
basic_string::operator[]
basic_string::front(C++11)
basic_string::back(C++11)
basic_string::data
basic_string::c_str
Итераторы
basic_string::begin
basic_string::cbegin

(C++11)
basic_string::end
basic_string::cend

(C++11)
basic_string::rbegin
basic_string::crbegin

(C++11)
basic_string::rend
basic_string::crend

(C++11)
Вместимость
basic_string::empty
basic_string::size
basic_string::length
basic_string::max_size
basic_string::reserve
basic_string::capacity
basic_string::shrink_to_fit(C++11)
Операции
basic_string::clear
basic_string::insert
basic_string::erase
basic_string::push_back
basic_string::pop_back(C++11)
basic_string::append
basic_string::operator+=
basic_string::compare
basic_string::replace
basic_string::substr
basic_string::copy
basic_string::resize
basic_string::swap
Поиск
basic_string::find
basic_string::rfind
basic_string::find_first_of
basic_string::find_first_not_of
basic_string::find_last_of
basic_string::find_last_not_of
Константы
basic_string::npos
Функции, не являющиеся членами
operator+
operator==
operator!=
operator<
operator>
operator<=
operator>=
swap(std::basic_string)
operator<<
operator>>
getline
stoi
stol
stoll
(C++11)
(C++11)
(C++11)
stoul
stoull
(C++11)
(C++11)
stof
stod
stold
(C++11)
(C++11)
(C++11)
to_string(C++11)
to_wstring(C++11)
Вспомогательные классы
hash<std::string>
hash<std::wstring>
hash<std::u32string>
hash<std::u16string>
(C++11)
 
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 = std::basic_string::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 InputIt >

basic_string( InputIt first, InputIt 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)
basic_string( basic_string&& other )
(8) (начиная с C++11)
basic_string( basic_string&& other, const Allocator& alloc );
(8) (начиная с C++11)
basic_string( std::initializer_list<CharT> init,
              const Allocator& alloc = Allocator() );
(9) (начиная с C++11)

Создает новую строку с помощью различных источников данных, с возможностью использования аллокатора alloc, переданного пользователем в качестве аргумента.

1) Конструктор по умолчанию. Создает пустую строку.

2) Создает строку из символа ch, повторенного count раз.

3) Создает строку из подстроки диапазона [pos, pos+count) параметра other. Если запрашиваемая подстрока выходит за границы конца строки или если count == npos, диапазон возвращаемой подстроки будет [pos, size()). Если pos >= other.size(), будет сгенерировано исключение std::out_of_range.

4) Создает строку из первых count символов строки, на которую указывает s. s может содержать нулевые символы. s не должен быть нулевым указателем.

5) Создает строку из содержимого строки с завершающим нулем, на которую указывает s. Длина строки определяется по первому вхождению NULL. s не должен быть нулевым указателем.

6) Создает строку с содержимым диапазона [first, last).

7) Конструктор копирования. Создает строку, копируя содержимое other.

8) Конструктор перемещения. Создает строку с содержимым other, используя семантику перемещения.

9) Создает строку с содержимым списка инициализации init.

Содержание

[править] Параметры

alloc - аллокатор, который будет использован для всех выделений памяти данной строки
count - размер строки, которая будет создана
ch - символ для инициализации строки
first, last - диапазон, из которого будут скопированы символы
s - указатель на строку символов, которая будет использована в качестве источника данных для создаваемой строки
other - другая строка, которая будет использована в качестве источника данных для создаваемой строки
init - список инициализации, который будет использован в качестве источника данных для создаваемой строки
Требования к типам
-
InputIt должен соответствовать требованиям InputIterator.

[править] Сложность

1) Константная

2-4) Линейная по count

5) Линейная по длине s

6) Линейная по расстоянию между first и last

7) Линейная по размеру other

8) Константная. Линейная, если передан alloc и alloc != other.get_allocator().

9) Линейная по размеру init

[править] Пример

[править] См. также

назначает символы строке
(public функция-член) [edit]
присваивает значения строке
(public функция-член) [edit]