Итератор, эквивалентный нулевому указателю?

В алгоритме, который я сейчас реализую, мне нужно управлять std :: list структуры T. T содержит ссылку на другой экземпляр T, но эта ссылка также может быть «неназначенной». Сначала я хотел использовать указатель для хранения этой ссылки, но использование итератора вместо этого упрощает удаление из списка.

Мой вопрос: как представить эквивалент нулевого указателя с помощью моего итератора?

Я прочитал, что общее решение - использовать myList.end (), но в моем случае мне нужно проверить, является ли итератор "нулевым" или нет, и я могу добавлять или удалять элементы в список между моментом, когда я сохранить итератор, и в тот момент, когда я удалю его из списка ... Должен ли я сделать так, чтобы итератор указывал на известный список, содержащий "нулевой" элемент? Или есть более элегантное решение?

13
задан Mikarnage 11 December 2010 в 23:15
поделиться