我试图找到如下问题的解决方案:提供了一个整数矩阵对某些元素的迭代器
假设我们已经实现了一个抽象数据类型“整数矩阵” (假设整数是存储在行中)。我们需要定义一个迭代器迭代器遍历矩阵的列,并且仅遍历矩阵的元素。
执行的folling代码:
Matrix M; ... Matrix::iterator it; for(it = M.begin(); it != M.end();++it) cout << *it
在基质上:
5 4 3 2 1 2 9 0 2 8 9 1
应产生2 8 4 0 2 2
我面临几个问题做。 首先,我想避免向class iterator
提供有关正在迭代的矩阵的大量信息。提供矩阵的行数和列数是不可避免的吗? 二,解决方案在很大程度上取决于基体的内部表示,所以我会说我应该实现一个基本的迭代器遍历逐行...
你认为是解决这一问题的最佳解决方案? 我只需要关于矩阵和迭代器的表示以及函数开始,结束,运算符*,运算符++和运算符==