В алгоритме, который я сейчас реализую, мне нужно манипулировать std :: list из struct T.
T содержит ссылку на другой экземпляр T, но эта ссылка также может быть «неназначенной».
Сначала я хотел использовать указатель для хранения этой ссылки, но вместо этого использование итератора облегчает его удаление из списка.
Мой вопрос: как представить эквивалент нулевого указателя с помощью моего итератора?
Я прочитал, что общее решение заключается в использовании myList.end (), но в моем случае мне нужно проверить, является ли итератор "нулевым" или нет, и я могу добавлять или удалять элементы в списке между моментом, когда я сохранить итератор и момент, когда я удаляю его из списка ... Должен ли я сделать так, чтобы итератор указывал на известный список, содержащий элемент «null»? Или есть более элегантное решение?