В отличие от C , C # имеет специальный тип bool
и не приводит к явному 1
true
:
bool myValue = 1; // <- Compile Time Error (C#)
Даже если возможно явное приведение, это не очень хорошая идея:
bool myValue = (bool)1; // It compiles, but not a good style
В вашем случае вы можете просто присвоить true
//DONE: static : we don't want "this" here
public static void SetArrayElement(int row, int col)
{
//DONE: validate public method's values
if (row < array.GetLowerBound(0) || row > array.GetUpperBound(0))
throw new ArgumentOutOfRangeException(nameof(row));
else if (col < array.GetLowerBound(1) || col > array.GetUpperBound(1))
throw new ArgumentOutOfRangeException(nameof(col));
array[row, col] = true; // true, instead of 1
}