「m_itFileBuffer」文字列リスト コンテナーを反復処理しているときに、イテレーターから値をフェッチしているときに例外が発生します。このコード行は、ほとんどの場合は機能しますが、例外が発生するのは一部の時間だけです。私のコードでは、「m_itFileBuffer」イテレーターを設定しています。異なる値に。コードの一部を以下に示します
StringList m_listFileBuffer; //this contains list of CString`s, I read from file and insert into this.
StringList::iterator m_itFileBuffer;
....
....
....
....
....
{
bool notEmpty = (m_itFileBuffer != m_MylistFileBuffer.end());
if (notEmpty)
{
m_strLine = static_cast<CString>(*m_itFileBuffer);//Here i get exception
++m_itFileBuffer;
}
}
以下は、出力ウィンドウに表示される例外です。
Severity: Critical Error (10 - 'System Crit.'), Returncode: 0x80040835, Error No.: 0 (access violation)
Description: C system exception code: C0000005
助けてください、なぜこの例外が発生するのですか? また、イテレータをリセットするにはどうすればよいですか?