std::basic_stringbuf::basic_stringbuf
Материал из cppreference.com
< cpp | io | basic stringbuf
![]() |
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
explicit basic_stringbuf(std::ios_base::openmode which = std::ios_base::in | std::ios_base::out); |
(1) | |
explicit basic_stringbuf (const std::basic_string<CharT, traits, Allocator>& new_str, std::ios_base::openmode which = std::ios_base::in |
(2) | |
basic_stringbuf(const basic_stringbuf& rhs) = delete; |
(3) | |
basic_stringbuf(basic_stringbuf&& rhs); |
(4) | (начиная с C++11) |
1)
Создает
std::basic_stringbuf
объекта: инициализация базового класса, вызвав конструктор по умолчанию std::basic_streambuf, инициализирует последовательность символов с пустой строкой, и устанавливает режим which
.Оригинал:
Constructs a
std::basic_stringbuf
object: initializes the base class by calling the default constructor of std::basic_streambuf, initializes the character sequence with an empty string, and sets the mode to which
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
2)
Создает
.std::basic_stringbuf
объекта, выполняя те же инициализация, как 1), после инициализации соответствующей последовательности символов как при вызове <div class="t-tr-text">ул (new_str)Оригинал:
str(new_str)
Текст был переведён автоматически используя [http://translate.google.com Переводчик Google].
Вы можете проверить и исправить перевод. Для инструкций щёлкните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].
Вы можете проверить и исправить перевод. Для инструкций щёлкните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].
Оригинал:
Constructs a
std::basic_stringbuf
object by performing the same initialization as 1), followed by initializing the associated character sequence as if by calling Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
3)
Конструктор копирования удаляется;
std::basic_stringbuf
не CopyConstructible
Оригинал:
The copy constructor is deleted;
std::basic_stringbuf
is not CopyConstructible
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
4)
Move-строит
std::basic_stringbuf
объекта, перемещая все государство от другого объекта std::basic_stringbuf
rhs
, в том числе связанные строки, открытом режиме, язык, и все другие государства. После переезда, шесть указателей std::basic_streambuf в *this гарантированно будут отличаться от соответствующих указателей в переехал из-rhs
если нулевой.Оригинал:
Move-constructs a
std::basic_stringbuf
object by moving all state from another std::basic_stringbuf
object rhs
, including the associated string, the open mode, the locale, and all other state. After the move, the six pointers of std::basic_streambuf in *this are guaranteed to be different from the corresponding pointers in the moved-from rhs
unless null.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править] Параметры
new_str | — | basic_string используется для инициализации буфера Оригинал: a basic_string used to initialize the buffer Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. | ||||||||||||||||||||||||||||||||||||
rhs | — | другой
basic_stringbuf Оригинал: another basic_stringbuf Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. | ||||||||||||||||||||||||||||||||||||
mode | — | указывает поток открытом режиме. Это битовая маска типа, определены следующие константы:
Оригинал: specifies stream open mode. It is bitmask type, the following constants are defined:
Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править] Заметки
Обычно вызывается конструктор std::basic_stringstream.
Оригинал:
Typically called by the constructor of std::basic_stringstream.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Уровень поддержки открытых режимах, отличных от std::ios_base::in и std::ios_base::out варьируется в зависимости от реализации. C + +11 явно указывает поддержки std::ios_base::ate в
str()
и в этом конструкторе, но std::ios_base::app, std::ios_base::trunc, и std::ios_base::binary оказывают различное влияние на разные реализации.Оригинал:
The level of support for the open modes other than std::ios_base::in and std::ios_base::out varies among implementations. C++11 explicitly specifies the support for std::ios_base::ate in
str()
and in this constructor, but std::ios_base::app, std::ios_base::trunc, and std::ios_base::binary have different effects on different implementations.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править] Пример
Демонстрация вызова конструктора basic_stringbuf непосредственно .
Оригинал:
Demonstrates calling the constructor of basic_stringbuf directly.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Запустить этот код
#include <iostream> #include <sstream> int main() { // default constructor (mode = in|out) std::stringbuf buf1; buf1.sputc('1'); std::cout << &buf1 << '\n'; // string constructor in at-end mode (C++11) std::stringbuf buf2("test", std::ios_base::in | std::ios_base::out | std::ios_base::ate); buf2.sputc('1'); std::cout << &buf2 << '\n'; // append mode test (results differ among compilers) std::stringbuf buf3("test", std::ios_base::in | std::ios_base::out | std::ios_base::app); buf3.sputc('1'); buf3.pubseekpos(1); buf3.sputc('2'); std::cout << &buf3 << '\n'; }
Вывод:
1 test1 est12 (Sun Studio) 2st1 (GCC)
[править] См. также
строит строку поток Оригинал: constructs the string stream Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент std::basic_stringstream )
|