--> 错误“Minesweeper.Game.Gewonnen()”:并非所有代码路径都返回值。
我做错了什么?
public bool Gewonnen()
{
for (int y = 0; y < _boolArray.GetLength(0); y++)
{
for (int x = 0; x < _boolArray.GetLength(1); x++)
{
if (_boolArray[x, y] == false)
return false;
else
return true;
}
}
}
最佳答案
这意味着并非所有可能的执行路径都会返回值。在您的示例中,循环甚至可能不会执行一次(当 _boolArray
长度为 0 时),如果发生这种情况,您的方法将不会返回任何内容。在方法末尾添加return false
:
public bool Gewonnen()
{
for (int y = 0; y < _boolArray.GetLength(0); y++)
{
for (int x = 0; x < _boolArray.GetLength(1); x++)
{
if (_boolArray[x, y] == false)
return false;
else
return true;
}
}
return false;
}
关于c# - "not all code paths return a value"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19832005/