私はオブジェクトのベクトルを持っていると私はセットに各オブジェクトをコピーしようとしている:C++:ベクトルに含まれるオブジェクトをセットに挿入するにはどうすればよいですか?
std::set<MinTreeEdge>minTreeOutputSet;
for(std::vector<MinTreeEdge>::iterator it = minTreeOutput.begin(); it != minTreeOutput.begin(); ++it)
minTreeOutputSet.insert(*it);
これは私にエラー比較のいくつかの種類その与えます(__X < __y 『'で』演算子<を|)挿入の呼び出しに欠落しています。私は試しました
minTreeOutputSet.insert(minTreeOutput[it]);
しかし、これは私には演算子[]の一致がないというエラーが表示されます。
オブジェクトをセットに挿入することはできませんか?ベクトルのオブジェクトをセットに正しく挿入するにはどうすればよいですか?
また、 'it'を' begin() 'ではなく' minTreeOutput.end() 'と比較するべきでしょう。 – Rakete1111
あなたの 'MinTreeEdge'に'演算子 'を定義してください。 –
ヒント: 'std :: set minTreeOutputSet {minTreeOutput.begin()、minTreeOutput.end()};'を実行するだけです。 –