std :: ostringstream覆盖初始化字符串

问题描述 投票:0回答:1

以下代码在clang++-7上产生“ 0004567”

#include <iostream>
#include <sstream>

using namespace std;

int main() {
    ostringstream oss{"1234567"};
    oss << "000";
    cout << oss.str() << endl;
}

现在这是正确的STL实现吗?

我想不出用将被覆盖的字符串进行初始化有什么用处...

c++ string c++11 stl c++17
1个回答
0
投票

@@ IgorTandetnik给您一个解决方案-添加std::ios_base::app std::ostringstream构造函数参数。

© www.soinside.com 2019 - 2024. All rights reserved.