std::stringstream
是 C++ 标准库中的一个类,位于 <sstream>
头文件中。它提供了一种在内存中操作字符串的方式,类似于文件流的操作。std::stringstream
继承自 std::iostream
,因此它具有输入流 (std::istream
) 和输出流 (std::ostream
) 的功能。
原理
std::stringstream
基于 std::stringbuf
这个缓冲区类。std::stringbuf
维护一个内部的 std::string
对象,所有的读写操作都在这个 std::string
上进行。这使得 std::stringstream
可以像文件流一样使用,但操作的对象是内存中的字符串。
使用方法
以下是 std::stringstream
的一些常见用法:
1. 创建 std::stringstream
对象
#include <sstream>
#include <iostream>
int main() {
std::stringstream ss;
}
2. 写入数据
#include <sstream>
#include <iostream>
int main() {
std::stringstream ss;
ss << "Hello, ";
ss << "world!";
std::cout << ss.str() << std::endl;