-1

intstringwithに割り当てるにはどうすればよいstringstreamですか?

次の例では、" " は割り当てられstringstream(mystr2) << b;ません。bmystr2

#include <iostream>
#include <string>
#include <sstream>

using namespace std;

int main()
{
    string mystr = "1204";
    int a;
    stringstream(mystr) >> a;
    cout << a << endl; // prints 1204

    int b = 10;
    string mystr2;
    stringstream(mystr2) << b;
    cout << mystr2 << endl; // prints nothing
    return 0;
}
4

5 に答える 5

1

ctor で文字列ストリームを作成するstringstream(mystr2)mystr2、バッファの初期コンテンツとしてコピーされます。mystr2ストリームに対する後続の操作によって変更されません。

strストリームのコンテンツを取得するには、次のメソッドを使用できます。

int b = 10;
string mystr2;
stringstream ss = stringstream(mystr2);  
ss << b;
cout << mystr2.str() << endl; 

コンストラクターstrメソッドを参照してください。

于 2013-08-30T22:56:38.143 に答える
0

あなたの文字通りの質問に対する答えは次のとおりです。

int b = 10;
std::string mystr2 = static_cast<stringstream &>(stringstream()<<b).str();
cout << mystr2 << endl;
于 2013-08-30T23:26:29.870 に答える