<sstream>

定义几个类模板,这些类支持存储于分配数组对象序列上的 iostreams 操作。 此类序列可以轻松转换为类模板 basic_string 的对象或从其中进行转换。

语法

namespace std {
template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>>
class basic_stringbuf;
typedef basic_stringbuf<char>
stringbuf;
typedef basic_stringbuf<wchar_t> wstringbuf;

template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>>
class basic_istringstream;
typedef basic_istringstream<char>
istringstream;
typedef basic_istringstream<wchar_t> wistringstream;

template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>>
class basic_ostringstream;
typedef basic_ostringstream<char>
ostringstream;
typedef basic_ostringstream<wchar_t> wostringstream;

template <class CharType, class Traits = char_traits<CharType>, class Allocator = allocator<CharType>>
class basic_stringstream;
typedef basic_stringstream<char>
stringstream;
typedef basic_stringstream<wchar_t> wstringstream;
// TEMPLATE FUNCTIONS
template <class CharType, class Traits, class Allocator>
void swap(
    basic_stringbuf<CharType, Traits, Allocator>& left,
    basic_stringbuf<CharType, Traits, Allocator>& right);

template <class CharType, class Traits, class Allocator>
void swap(
    basic_istringstream<CharType, Traits, Allocator>& left,
    basic_istringstream<CharType, Traits, Allocator>& right);

template <class CharType, class Traits, class Allocator>
void swap(
    basic_ostringstream<CharType, Traits, Allocator>& left,
    basic_ostringstream<CharType, Traits, Allocator>& right);

template <class CharType, class Traits, class Allocator>
void swap (
    basic_stringstream<CharType, Traits, Allocator>& left,
    basic_stringstream<CharType, Traits, Allocator>& right);

}  // namespace std

参数

left
引用 sstream 对象。

right
引用 sstream 对象。

注解

类型为 char * 的对象可使用 <strstream> 中的功能进行流式处理。 但是,已弃用 strstream<>,建议使用 sstream<>。

Typedef

类型名称 说明
istringstream 创建专用于 char 模板参数的类型 basic_istringstream
ostringstream 创建专用于 char 模板参数的类型 basic_ostringstream
stringbuf 创建专用于 char 模板参数的类型 basic_stringbuf
stringstream 创建专用于 char 模板参数的类型 basic_stringstream
wistringstream 创建专用于 wchar_t 模板参数的类型 basic_istringstream
wostringstream 创建专用于 wchar_t 模板参数的类型 basic_ostringstream
wstringbuf 创建专用于 wchar_t 模板参数的类型 basic_stringbuf
wstringstream 创建专用于 wchar_t 模板参数的类型 basic_stringstream

操控器

名称 描述
swap 交换两个 sstream 对象间的值。

说明
basic_stringbuf 描述对 Elem 类型的元素(其字符特征由类 Tr 确定)与数组对象中存储的元素序列之间的来回传输进行控制的流缓冲区。
basic_istringstream 描述一个对象,该对象控制从 basic_stringbuf<Elem, Tr, Alloc> 类的流缓冲区中提取元素和编码对象的操作,该类具有 Elem 类型的元素,元素的字符特征由 Tr 类确定,并且其元素由 Alloc 类的分配器进行分配。
basic_ostringstream 描述一个对象,该对象控制在 basic_stringbuf<Elem, Tr, Alloc> 类的流缓冲区中插入元素和编码对象的操作,该类具有 Elem 类型的元素,元素的字符特征由 Tr 类确定,并且其元素由 Alloc 类的分配器进行分配。
basic_stringstream 描述一个对象,该对象使用 basic_stringbuf<Elem, Tr, Alloc> 类的流缓冲区,控制插入和提取元素和编码对象的操作,该类具有 Elem 类型的元素,元素的字符特征由 Tr 类确定,并且其元素由 Alloc 类的分配器进行分配。

要求

  • 标头:<sstream>

  • 命名空间: std

另请参阅

头文件引用
C++ 标准库中的线程安全
iostream 编程
iostreams 约定