std::basic_stringbuf::basic_stringbuf
Материал из cppreference.com
|
|
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
<metanoindex/>
<tbody> </tbody> 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 | std::ios_base::out); |
(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), после инициализации соответствующей последовательности символов как при вызове ул (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 ул (new_str)
.Оригинал:
str(new_str)
Текст был переведён автоматически используя [http://translate.google.com Переводчик Google].
Вы можете проверить и исправить перевод. Для инструкций щёлкните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].
Вы можете проверить и исправить перевод. Для инструкций щёлкните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].
Текст был переведён автоматически используя Переводчик 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)
|