如何修复System.StackOverflow异常?

时间:2015-04-11 09:13:48

标签: c# class exception

我使用了2个类,我需要发送/接收方法和变量。但是当我创建这个类的实例时,它给了我一个System.StackOverflowException

如何解决这个问题?

这是我的代码:

class Setup1
{
   Setup2 set2 = new Setup();

   int a = 5;

   public int myMethod();
   {
      set2.b =  a + 10;
      return set2.b;
   }
}

class Setup2
{
    Setup1 set1 = new Setup();
    public int b = 0;
    void  Show()
    {
        MessageBox.Show(set1.myMethod());
    }

}

2 个答案:

答案 0 :(得分:3)

你有一个无限的递归。

Setup2()的构造函数中,您调用Setup1()的构造函数。你可以无限地调用Setup2()的构造函数等等。你的内存耗尽,你的堆栈溢出。

答案 1 :(得分:0)

似乎你有循环构造函数调用导致堆栈溢出异常。