无法计算表达式,因为当前线程处于堆栈溢出状态。(C#)

时间:2014-03-24 06:07:32

标签: c# stack-overflow

我正在用C#编写一个看起来像这样的应用程序。

public partial class MainForm : Form
{

WICForm Frm = new WICForm();

public MainForm(){}

}

其中 MainForm WICForm 是同一应用程序中的两种不同形式。但是当我运行应用程序时,我在创建WICForm的新实例Frm时遇到上述错误。可能是什么原因?

1 个答案:

答案 0 :(得分:14)

据推测,您正在MainForm中的构造函数中创建WICForm的新实例(或者从其中调用的一些代码)。

这样MainFormWICForm类以递归方式调用和构造彼此的新实例,这将导致堆栈溢出异常。

提示:在包含new WICForm();的行上放置一个断点(将光标放在该行上,然后按F9)。当您在调试模式下运行代码时,您可以单步执行该方法以查看它的作用。