метод begin() у map возвращает NULL!!!
От: AlexeyV Россия  
Дата: 17.11.06 15:16
Оценка:
Здраствуйте!
Подскажите пожалуйста — в каком случае метод begin() может возвращать итератор с node == NULL?
std::map<TDateTime, int> m;

// заполнение данными
// ...
//

std::map<TDateTime, int>::iterator i = m.begin();
while ( i != m.end() )
{
   // 
   // что-то делаем
   //
   ++i;
}

так вот при первом выполнении строки с while выпадаем по эксепшену AccessViolation. Если под дебагером посмотреть итератор перед выполнением while, то он содержит NULL. При этом в мапе порядка 12 записей!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.