【题目】建立一个二维数组类douary,使该类中有以下数据成员、成员函数及友员函数,完成矩阵的输入、输出、加、减、相等判断等操作。
给出的代码部分如下:
【参考解答】
还看见有的同学除了重载输出(ostream &operator<<(ostream &output, douary &d))时用双重循环外,其余的函数中只用单重循环实现,例如operate+的实现:
这也是一个很好的解决办法,对应位置上的值相加即可。只要输出时让用户看着是二维的样子即可,用户才不关心内部的实现呢。这种“欺里瞒外”的方法值得推荐。这要谴责,原题中要让实现二维数组功能,却偏给出个指向int的指针就已经带头这么干了。
<本文完>