std::basic_stringbuf::str
Материал из cppreference.com
< cpp | io | basic stringbuf
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
std::basic_string<CharT, Traits, Allocator> str()const; | (1) | |
void str(conststd::basic_string<CharT, Traits, Allocator>& s); | (2) | |
Получает и устанавливает основной строки.
Оригинал:
Gets and sets the underlying string.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
1)
Создает и возвращает объект, содержащий std::basic_string копию основного последовательность символов этого
std::basic_stringbuf
автора. Для только для ввода потоков, возвращаемая строка содержит символы из диапазона [eback(), egptr()). Для входа / выхода или выход только для потоков, содержит символы из pbase() на последний символ в последовательности, независимо от egptr() и epptr().Оригинал:
Creates and returns a std::basic_string object containing a copy of this
std::basic_stringbuf
's underlying character sequence. For input-only streams, the returned string contains the characters from the range [eback(), egptr()). For input/output or output-only streams, contains the characters from pbase() to the last character in the sequence regardless of egptr() and epptr().Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
2)
Удаляет все основные последовательность символов этого
std::basic_stringbuf
, а затем настраивает новый основной последовательность символов, содержащий копию содержимого s
. Указателей std::basic_streambuf инициализируются следующим образом:Оригинал:
Deletes the entire underlying character sequence of this
std::basic_stringbuf
and then configures a new underlying character sequence containing a copy of the contents of s
. The pointers of std::basic_streambuf are initialized as follows:Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- Для входных потоков (mode & ios_base::in==true), eback() указывает на первый символ, gptr()== eback(), и egptr()== eback()+ s.size(): последующем входе будет читать первый символ скопированы с
s
.Оригинал:For input streams (mode & ios_base::in==true), eback() points at the first character, gptr()== eback(), and egptr()== eback()+ s.size(): the subsequent input will read the first character copied froms
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. - Для выходных потоков (mode & ios_base::out==true), pbase() указывает на первый символ и epptr()>= pbase()+ s.size() (epptr допускается указывать дальше, так что следующие
sputc()
не будет немедленно позвонитьoverflow()
)Оригинал:For output streams (mode & ios_base::out==true), pbase() points at the first character and epptr()>= pbase()+ s.size() (epptr is allowed to point farther so that the followingsputc()
wouldn't immediately calloverflow()
)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.- Для добавления потоков (mode & ios_base::ate==true), pptr()== pbase()+ s.size(), так что последующие выходные будут добавлены к последнему символу скопированы с
s
(начиная с C++11)Оригинал:For append streams (mode & ios_base::ate==true), pptr()== pbase()+ s.size(), so that subsequent output will be appended to the last character copied froms
(начиная с C++11)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. - Для не-добавления выходных потоков, pptr()== pbase(), так что последующие выходные будут перезаписаны символы скопированы с
s
.Оригинал:For no-appending output streams, pptr()== pbase(), so that subsequent output will overwrite the characters copied froms
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править]Параметры
s | — | Строка объект, содержащий последовательность замены символов Оригинал: a string object holding the replacement character sequence Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править]Возвращаемое значение
1)
Строка объект, содержащий копию основного последовательность символов этого буфера.
Оригинал:
A string object holding a copy of this buffer's underlying character sequence.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
2) (Нет)
[править]Заметки
Эта функция, как правило, доступны через std::basic_stringstream::str().
Оригинал:
This function is typically accessed through std::basic_stringstream::str().
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править]Пример
Запустить этот код
#include <sstream>#include <iostream>int main(){int n; std::istringstream in;// could also use in("1 2") in.rdbuf()->str("1 2");// set the get area in >> n;std::cout<<"after reading the first int from \"1 2\", the int is "<< n <<", str() = \""<< in.rdbuf()->str()<<"\"\n";// or in.str() std::ostringstream out("1 2"); out <<3;std::cout<<"after writing the int '3' to output stream \"1 2\""<<", str() = \""<< out.str()<<"\"\n"; std::ostringstream ate("1 2", std::ios_base::ate);// C++11 ate <<3;std::cout<<"after writing the int '3' to append stream \"1 2\""<<", str() = \""<< ate.str()<<"\"\n";}
Вывод:
after reading the first int from "1 2", the int is 1, str() = "1 2" after writing the int '3' to output stream "1 2", str() = "3 2" after writing the int '3' to append stream "1 2", str() = "1 23"
[править]См. также
получает или задает содержание основного объекта устройств строку Оригинал: gets or sets the contents of underlying string device object Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент std::basic_stringstream ) |