當我通過「m_itFileBuffer」字符串容器迭代時,從迭代器中獲取值時發生異常。這段代碼在大多數情況下工作,但只有一段時間它會發生異常。在我的代碼中,我將「m_itFileBuffer 「不同價值的迭代器。該部分代碼如下迭代stringList容器時出錯..?
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
任何幫助,爲什麼我收到此異常? 另外,我們如何重置迭代器?
你是如何初始化m_itFileBuffer的? – Mat
//初始化文件的開頭 m_itFileBuffer = m_listFileBuffer.begin(); – Nikhil
你怎麼有m_listFileBuffer和m_MylistFileBuffer? – Mat