Перегрузка операторов C#
Создал свой класс матриц, для сложения матриц между собой перегрузил оператор сложения
public static Matrix operator +(Matrix m1, Matrix m2)
{
if(m1.matrix.GetLength(0)!=m2.matrix.GetLength(0)||m1.matrix.GetLength(1)!=m2.matrix.GetLength(1)){ return m1;}
else
{
int Lx = m1.matrix.GetLength(0);
int Ly = m1.matrix.GetLength(1);
Matrix tmp = new Matrix(m1.matrix.GetLength(0), m1.matrix.GetLength(1));
for (int y = 0; y < Ly; y++)
{
for (int x = 0; x < Lx; x++)
{
tmp.matrix[x, y] = m1.matrix[x, y] + m2.matrix[x, y];
}
}
return tmp;
}
}
между собой матрицы прекрасно складываются. а как перегрузить этот оператор по отношению например к типу int,double,float и т. д.
например что бы сложить матрицу с числом?
и кстати да, матрицу нельзя сложить с числом, но все равно решение перегрузки я нашел, всего лишь тип первого объекта нужно изменить и все, подойдет для умножения на число