Член списка end Функция возвращает итератор по значению.
Таким образом, в этом фрагменте
it1 = mylist.end()--;
оператор постинкремента применяется к временному значению, возвращаемому .end()
после того, как присвоено it1
. Так что it1
в точности равно .end()
.
Во втором фрагменте
it2 = mylist.end();
it2--;
вы уменьшаете it2
, поэтому вы указываете на одну позицию перед .end()
.