В свободное время я работал над написанием библиотеки, чтобы больше узнать о c ++ и разложении по сингулярным значениям. Я работал над написанием класса Iterator, и я полностью способен написать функциональность, и у меня уже есть свой собственный класс MatrixIterator. Я предполагаю, что это включает в себя пространства имен, потому что:
vector<int>::iterator
Может показаться, что это итератор из вектора пространства имен, но пространства имен - это еще одна тема, с которой я не знаком.
В основном я спрашиваю, что это будет включать в себя для реализации итератора, чтобы на него можно было ссылаться аналогично итераторам stl. Я также знаю, что мог бы использовать boost.iterators или что-то подобное, чтобы сэкономить мне много работы, но мне больше интересно узнать все детали, связанные с чем-то вроде этого.