设计一个可以用<<和逗号输入矩阵的方案

来源:互联网 发布:oc内存管理源码 编辑:程序博客网 时间:2024/06/11 16:09

      碰到网友问一个问题:如何重载以后达到matrix<<1,2,3,4,5...这样的输入效果?

      很当然就想到了重载运算符<<,并且逗号也是需要重载的,我们写出以下代码:

struct matrix{int data[9];int index;};matrix& operator<<(matrix& ms,int data){ms.data[ms.index++] = data;return ms;}matrix& operator,(matrix& ms,int data){ms.data[ms.index++] = data;return ms;}int _tmain(int argc, _TCHAR* argv[]){matrix ms;ms.index = 0;ms<<1,2,3,4,5,6,7,8,9;return 0;}

注意重载的运算符应该返回matrix的引用。

0 0