今日、私は無限ループに入った要素の要素を出力しようとしていました。 iは集合の大きさを取得しようとした場合 は、8std :: setの繰り返しが終了しない
コードたそれは私に返される正しい値は、それがサイズをフェッチする前に、上記の宣言されたこの
std::cout << "size of set is " << myset.size();
for(it=myset.begin();it!=myset.end();it++)
std::cout << "value is : " << *it;
イテレータのようでした。興味深い事実の1つは、印刷中に期待された要素の1つがセットにないことでした。
私はあなたに怒ったり、馬鹿げたミスをしていることは知っていますが、私の心配はそれですか? myset.end()はいくつかのランダムな場所を指していますか?しかし、なぜ、印刷中にセットから要素を繰り返してクラッシュしないのでしょうか?
問題は、私たちに表示されないコードにあります。 –
私の関心はcan end()function haywireに行きました...私はそれを見たことがありません 2番目のものはなぜサイズが8で、私は印刷サイズのfor文の真下にforループがあります。どのようにそれは間違って行くことができますか? – Invictus
エラーを示す* complete *、* minimal *サンプルプログラムを投稿してください。 *完全な*プログラムはコピー&ペーストとコンパイルが可能なプログラムです。 * * minimal *プログラムには、問題に無関係な行は含まれません。私はそれを作ることは難しいと思っていますが、それは貴重です。私たちはあなたの問題をより良く解決することができます。また、最小限のサンプルを作成しながら、それをあなた自身で解決することもできます。 http://sscce.org/を参照してください。 –