我正在用 c++ 编写一个矩阵类,并试图重载一些运算符,如 = 和 >> 和 << 等。
我无法为矩阵类重载运算符 [][]。 如果我有一个像 M1 这样的类矩阵对象,那么我可以使用这种方式为每个元素赋值:
M1[1][2]=5;
或
int X;
X=M1[4][5];
最佳答案
只需重载 operator[]
并使其返回指向矩阵相应行或列的指针。由于指针支持 []
下标,因此可以通过'double-square'符号 [][]
进行访问。
您还可以使用两个参数重载 operator()
。
关于c++ - 两个方括号重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5637197/