タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

destructive-methodとc++に関するnabinnoのブックマーク (1)

  • イテレータ破壊の問題 - Qiita

    これはC++アドベントカレンダー2014の8日目の記事です。 ゲームの修羅場10に投稿した記事で「プログラムの落ちるポイント」の中で 4つほどポイントを紹介したのですが、その中の一つがイテレータ破壊です。 これは、ややこしいので、の方では軽く触れるだけで終わったのですが、 今回、あたらめて紹介したいと思います。 vectorやmapというコンテナを使う機会は多いのですが、 知らず知らずのうちに破壊されたイテレータを使っていることがあります。 まずイテレータ破壊について簡単に書きます。 void foo(){ std::vector<int> a = {1, 2, 3, 4, 5}; auto it1 = a.begin(); a.push_back(6); std::cout << *it1 << std::endl; } こういうソースがイテレータ破壊の例となります。 vectorの場

    イテレータ破壊の問題 - Qiita
  • 1