并非所有代码路径都返回一个值

Ara*_*ash 4 c# compiler-warnings

我得到了这个编译器错误,有什么问题?

public PictureBox getinfo(int i, int j)
{
    return grid[i, j];
}

public  PictureBox kingmove(int i, int j)///<-----the problem is here
{
    getinfo(i, j);

    if (i < 9)
    {
        grid[i, j] = grid[i - 1, j - 1];
    }
    else
    {
        grid[i, j] = grid[i, j];
    }
Run Code Online (Sandbox Code Playgroud)

Cod*_*aos 6

你的第二种方法没有return声明,但返回类型不同void.在方法的末尾
添加return语句,而不是在开头.

您可以将其编辑到上一个问题中.

混合UI和游戏逻辑的方式也很难看.游戏逻辑应该对WinForms,图片框一无所知......
而是编写一个函数,它将游戏状态转换为某个控件/位图/ 图片框/ ...

  • 另外,他对`getinfo()`的调用可能没有做任何有用的事情,但这是一个完全不同的问题. (3认同)