2013-08-19 60 views

回答

2

必須有一個副本,因爲std::vector<char>std::string不能共享內存。鑑於此,如果你想停在第一個'\n'

std::string s(v.begin(), std::find(v.begin(), v.end(), '\n')); 

應該做的伎倆。 (所得的字符串將包含'\n'

更有可能的是,你要保存的std::find結果在一箇中間變量,這樣就可以在以後繼續解析向量的其餘部分。

相關問題