我在C ++中练习过。它是8-Queens的解决方案,可输出所有92种可能的解决方案。
C++ code example: What makes this loop so many times?
然后我用C#编写了它。在这里,但我最后有一个错误。
int[,] state = new int[8, 8];
solve_state(state, 0); // Error: an object reference is required for non-//static field,method
}
}
}
}
答案 0 :(得分:3)
尝试将solve_state
方法声明为静态。
// ↓
private static void solve_state(int[,] state, int count)
{
// method implementation here
}
答案 1 :(得分:3)
看起来您将solve_state
声明为实例(即非静态)方法。但是,如果不引用父类的实例,则无法调用实例方法。相反,将solve_state
方法设为静态,如下所示:
public class Program
{
public static void Main(string[] args)
{
...
int[,] state = new int[8, 8];
solve_state(state, 0);
...
}
private static void solve_state(int[,] state, int x)
{
...
}
}
进一步阅读