Здравейте,
Открих грешка в предефиницията на постфиксния оператор за декрементиране (T operator--(int)
) за класовете LinkedListIterator и DoubleLinkedListIterator от лекцията за списъци. Например, за вторият клас имплементацията е следната:
// it--
DoubleLinkedListIterator<T> operator--(int) {
DoubleListElement<T>* oldptr = ptr;
++(*this);
return oldptr;
}
В случая ++(*this);
не трябва ли да е --(*this);
?
P.S. Освен това би било по-логично член-данните на тези класове да са protected, за да може да се достъпват директно от наследяващи класове.