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

std::basic_stringbuf::str

Материал из cppreference.com
< cpp‎ | io‎ | basic stringbuf

 
 
Библиотека ввода/вывода
Манипуляторы ввода/вывода
Функции print (C++23)
Ввод/вывод в стиле C
Буферы
(устарело в C++98)
Потоки
Абстракции
Файловый ввод/вывод
Ввод/вывод строк
Ввод/вывод массивов
(устарело в C++98)
(устарело в C++98)
(устарело в C++98)
Синхронизированный вывод
Типы
Интерфейс категорий ошибок
(C++11)
 
std::basic_stringbuf
Общественные функции-члены
Оригинал:
Public member functions
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
basic_stringbuf::str
Охраняемые функций-членов
Оригинал:
Protected member functions
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Функции, не являющиеся членами
 
std::basic_string<CharT, Traits, Allocator> str() const;
(1)
void str( const std::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 from s.
Текст был переведён автоматически используя Переводчик 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 following sputc() wouldn't immediately call overflow())
Текст был переведён автоматически используя Переводчик 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 from s (начиная с C++11)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Для не-добавления выходных потоков, pptr() == pbase(), так что последующие выходные будут перезаписаны символы скопированы с s.
Оригинал:
For no-appending output streams, pptr() == pbase(), so that subsequent output will overwrite the characters copied from s.
Текст был переведён автоматически используя Переводчик 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) [править]