c++ - "basic"类的运算符重载

标签 c++ matrix overloading operator-keyword

您好,我想将一个矩阵乘以左边的一个数字,例如:N=a*M 其中 a 是一个数字。

如果我想在右边相乘,我会简单地在我的矩阵类中重载运算符 *。 但是在这种情况下我该怎么办?即使它是“默认”类,我可以重载 float 的运算符 * 吗? (我什至不确定这是一个类)

最佳答案

您必须根据另一个来定义功能。例如:

Matrix operator *(float x, Matrix const& m)
{
    return m * x;
}

关于c++ - "basic"类的运算符重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16510571/

相关文章:

c++ - Qt4:装饰QLineEdit(在其周围绘画)

matlab - 如何在Matlab中将矩阵的大小加倍并传播其元素?

C++ 错误 C2511 : overloaded member function not found in 'Sprite'

c++ - 函数重载类设计

java - 将null传递给歧义的重载方法

c++ - 将 shared_ptr 强制转换为 void*

c++ - 如何在 Win32 中操作来自键盘的输入?

c++ - 大数组大小的段错误

c - 如何显示字母在矩阵上的位置?

c++ - 在C++中读取PPM图像缺少最后一个像素