c++中, char* 如何转换成 std::shared_ptr<std::iostream>?

2021-07-21 13:46:34 +08:00
 icemanpro
用 aliyun 的 oss sdk 上传 buff 内容,aliyun 用的是智能指针。
1563 次点击
所在节点    C++
5 条回复
ipwx
2021-07-21 14:56:08 +08:00
这里的问题不在于智能指针啊大哥。char* 和 std::iostream 八竿子打不上边

你大概需要一个 std::istringstream 或者 std::ostringstream
jmc891205
2021-07-21 15:16:13 +08:00
你应该是想要用“<<"把 char*往 stream 里 insert 吧
l00t
2021-07-21 15:19:09 +08:00
智能指针 std::make_shared<std::iostream>(xxxxxxxxx)
char* 到 iostream, 你可以找一下网上常见的那个从 char* => streambuf => istream 的转换方法,或许能用。
然后拼起来,试试。
nannanziyu
2021-07-21 15:24:12 +08:00
std::shared_ptr<std::iostream> iosp = std::make_shared<std::stringstream>("you chars");
byaiu
2021-07-22 08:36:02 +08:00
这 sdk 是 header only 的吗?居然用智能指针做接口?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/790826

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX