基本的に、マトリックス用の一般的なブルートフォース getMax() メソッドを作成しようとしています。ここに私が持っているものがあります:
private T getMax <T>(T[,] matrix, uint rows, uint cols) where T : IComparable<T>
{
T max_val = matrix[0, 0];
for (int row = 0; row < rows; ++row)
{
for (int col = 0; col < cols; ++col)
{
if (matrix[row, col] > max_val)
{
max_val = matrix[row, col];
}
}
}
return max_val;
}
これはエラーでコンパイルされませんOperator '>' cannot be applied to operands of type 'T' and 'T'
。IComparable ディレクティブを指定したので、ここで何が起こっているのかわかりません。これが機能しないのはなぜですか?