2011-10-28 11 views
4

は一例に過ぎず、実際のコードの場合

ostringstream& insert(ostringstream& oss, const string& s) 
{ 
    streamsize pos = oss.tellp(); 
    oss.str(s + oss.str()); 
    oss.seekp(pos + s.length()); 
    return oss; 
} 
:すべての応答のための

stringstream ss; 
ss << " world!"; 

string hello("Hello"); 

// insert hello to beginning of ss ?? 

おかげで、私はまた、働くこのコードを発見しました私が見ることができる

答えて

0

唯一の方法は、ストリームから文字列を作成し、STRE呼ば

string result = hello + ss.str(); 

そのあなたの他の文字列の接頭辞であります何か理由があります。 SS1を想定し

0

"hello" を

ss1 << ss.rdbuf(); 

または

ss1 << "hello" << ss; 

詳細はこのURLを参照してください含まれています -

stringstream

3

コピーを作成せずに実行することはできません。片道:

stringstream ss; 
ss << " world!"; 

const string &temp = ss.str(); 
ss.seekp(0); 
ss << "Hello"; 
ss << temp; 
関連する問題