public static int[,] operator *(int[,] arr1, int[,] arr2)
{
int sum;
int[,] res = new int[arr1.GetLength(0), arr2.GetLength(1)];
for (int i = 0; i < arr1.GetLength(0); i++)
{
for (int j = 0; j < arr2.GetLength(1); j++)
{
sum = 0;
for (int k = 0; k < arr1.GetLength(1); k++)
{
sum = sum + (arr1[i, k] * arr2[k, j]);
}
res[i, j] = sum;
//Console.Write("{0} ", res[i, j]);
}
//Console.WriteLine();
}
return res;
}
Run Code Online (Sandbox Code Playgroud)
这里我试图重载*运算符乘以两个矩阵..但编译器继续向我显示错误..
"二元运算符的一个参数必须是包含类型c#"
请告诉我我的代码中有什么问题以及如何解决它.