В stl полно таких определений:
iterator begin ();
const_iterator begin () const;
Поскольку возвращаемое значение не участвует в разрешении перегрузки, единственная разница здесь - это функция const
. Является ли эта часть механизма перегрузки? Что такое алгоритм компилятора для решения такой строки, как:
vector<int>::const_iterator it = myvector.begin();