単語ごとに読み取るのではなく、ストリームから行単位で読み取るユーティリティ関数のセットがあります。それらは s で動作するので、これらの関数のスコープ内のみで抽出演算子string
をローカルに変更したいと思います。string
それは可能ですか?
私が今していることは、 である を作成し、その構造体のみの抽出演算子を作成するstruct
ことですstring
。
struct line{
string str;
};
istream& operator>>(istream& lhs, line& rhs){
return getline(lhs, rhs.str);
}
そして、次のistream
ように抽出します。
vector<line> foo{ istream_iterator<line>(istringstream("Lorem Ipsum\nLorem Ipsum")), istream_iterator<line>() };
struct line
これはうまくいきますが、ラッパーが好きではありません。私が求めているのは、istream& operator>>(istream& lhs, string& rhs)
代わりにこれを達成するためにローカルでオーバーロードできますか?