Ошибка сегментации из std :: _ Rb_tree_increment (__x = 0x1) - PullRequest
0 голосов
/ 27 января 2012

Я получаю ошибку сегментации при итерации по набору.Трассировка стека указывает на 0x000000081193ccc5 в std :: _ Rb_tree_increment (__x = 0x1) в /libstdc++/src/tree.cc:68 0x0000000806c3107e в std :: _ Rb_tree_const_iterator :: operator ++ в

* * * * * *получить ничего более информативного, но последняя строка сбоя, как показано ниже.Итератор завершен.

  typedef std::set<test*,test_less> test_set_t;

  test_set_t& set(bt->getSet());   // getSet() will return reference to the class bt member variable set

 test_set_t::iterator pos = set.begin();

 test empty(val);
 test* last_ptr = &empty;

 for (; pos != set.end(); last_ptr = *pos++) {       // gdb shows this as last line

Я не вижу проблемы.Заранее спасибо.

1 Ответ

2 голосов
/ 27 января 2012

Скорее всего, набор пуст или вы удалили элемент, на который указывал pos во время итерации.

...