如何在 C++ 中将 rhs 值添加到 class(运算符重载)

How to add rhs value to class in C++ (operator overloading)

我有一个矩阵 class,我想重载 C++ 中的 * 运算符以将标量乘以矩阵。我能够实现..

matrix1 * matrix2
matrix1 * 5

但我也希望 5 * matrix1 工作。

如何实现这个..不知道要搜索什么,没有相关的内容:|

像这样,用相反的参数调用现有的 matrix * scalar 函数:

inline matrix operator*(int scalar, const matrix& mat) {
    return mat * scalar;
}

以上是一个自由函数,将在 matrix 所在的任何命名空间中声明,而不是在 class.

中声明