据我了解, astd::stringstream
在内部不是表示为 anstd::string
而是表示为一组std::string
实例。(如果我错了,请纠正我)。
我有表示为 an 的数据std::stringstream
,我想将它传递给一个 C 函数(clCreateProgramWithSource
来自 OpenCL),该函数期望数据作为字符数组的数组。( const char**)
.
是否有某种方法可以在不首先创建包含字符串流的全部内容的单个字符串的情况下执行此操作,例如通过以下方式:
std::string tmp1 = my_stringstream.str();
const char* tmp2 = tmp1.c_str();
const char** tmp3 = &tmp2;
编辑
后续问题:
如果这是不可能的,是否有一些替代方法std::stringstream
,继承自std::ostream
,允许这种低级访问?