0

挿入イテレータと、挿入したい要素へのイテレータがありますが、使用が許可されていませんstd::copy

これは、c++ リファレンス ページで見つけたものです。

std::copy (bar.begin(),bar.end(),insert_it);

これもやりたいのですが使えませんstd::copy。別の方法はありますか?

4

2 に答える 2

2
auto first = bar.begin();
auto last = bar.end();
while (first!=last)
{
  *insert_it = *first;
  ++insert_it;
  ++first;
}
于 2013-10-09T08:06:21.183 に答える
0

あなたが提供するコードは、コンテンツを bar.begin() から bar.end() に挿入イテレータに移動します。私はあなたが使用した用語に混乱しており、insertstd::copyも挿入せず、コンテンツをコピーするだけです。

実際にコンテナに要素を挿入するには、これを使用できます。

your_container.insert(insert_it, bar.begin(),bar.end());

http://en.cppreference.com/w/cpp/container/vector/insert/insert/の例をここで見つけることができますstd::vector

これが役に立てば幸いです、Raxvan。

于 2013-10-09T08:13:50.913 に答える