我是一个编程世界的新手,并试图重构Outlook Addin,其中所有代码都是在ThisAddIn.cs中编写的,即自动生成的文件。我将ThisAddIn的内容分隔到几个类中,但是当我调试我的应用程序时,会引发StackOverflow异常。造成这种问题的原因是什么?Outlook Addin中的StackOverFlow异常
0
A
回答
0
一般而言,StackOverflowException
意味着某些代码已进入无限循环。考虑下面的例子,它永远不会终止。想象一下,Main
是您的应用程序(即Outlook插件)的入口点,然后方法A
和Main
将继续相互呼叫,直到出现StackOverflowException
。
public void Main()
{
A();
}
public void A()
{
Main();
}
如果你可以运行在Visual Studio调试模式下的应用程序,它通常会告诉你从StackOverflowException
发生在堆栈跟踪。使用这些信息应该有可能追踪错误。
它通常是由递归函数(例如由于误用或“坏”停止条件)或不断相互引发的事件引起的。
0
最常见的原因是递归函数:一个调用自身的函数。
故障排除提示,请参阅本:How do I prevent and/or handle a StackOverflowException?
当你调试要暂停/停止执行代码时调用堆栈的增长非常大,那么问题将是可见的。下面是一个例子,如果你用大数字调用这个函数,你会得到一个Stackoverflow异常:
private long Multiply(int x, int y)
{
x+=y;
y--;
if (y==0) return x;
return Multiply(x,y);
}
相关问题
- 1. StackOverflow的异常
- 2. IIS StackOverflow异常
- 3. StackOverflow异常
- 4. 碎片中的StackOverflow异常
- 5. Java中的StackOverflow异常
- 6. 回溯StackOverflow异常
- 7. Telerik RadGridView.CommitEdit()StackOverflow异常
- 8. Stackoverflow异常与Savefiledialog
- 9. DataGrid WPF StackOverFlow异常
- 10. Primefaces Tree StackOverFlow异常
- 11. Outlook Addin window.open
- 12. Outlook Addin部署
- 13. Outlook Addin - 卸载
- 14. VSTO Addin for Outlook无法正常工作
- 15. 春Tuckey URLRewriter的StackOverflow异常
- 16. StackOverflow在GraphicsCreator()的异常。FillEllipse
- 17. Linq to SQL的Stackoverflow异常
- 18. 在Gson的Stackoverflow异常
- 19. @ Html.Action上的StackOverflow异常()
- 20. StackOverflow的异常get和set
- 21. 在Outlook Addin中查找MailType
- 22. Outlook Addin事件C#
- 23. Outlook AddIn - 更改GlobalAppointmentId
- 24. 我的F#代码中的StackOverflow异常
- 25. Outlook - CreateDispatch异常
- 26. C#VSTO Addin异常与当前项目
- 27. FirebaseDatabase RxJava2扩展中的StackOverflow异常
- 28. 递归调用中的StackOverFlow异常
- 29. 什么是vb.net中的StackOverFlow异常?
- 30. 在窗体类中的stackoverflow异常
原因通常是调用循环或非预期的递归。尽管没有看到代码,但我们无法告诉你它在哪里或如何修复它。 –
欢迎来到[so]!请查看[faq]并阅读[问]几次。我们确实需要您发布您认为会导致问题的代码以解决问题,否则请在我的答案中查看提示以自行解决问题,祝您好运! –