【问题标题】:Out of memory error MATLAB:lang:StackOverflow内存不足错误 MATLAB:lang:StackOverflow
【发布时间】:2020-10-15 21:44:30
【问题描述】:

我正在开发一个未编译的 Matlab 应用程序,但是当我编译它并尝试运行可执行文件时,得到了这个错误:

内存不足。可能的原因是在 程序。集合中的错误(第 15 行)MATLAB:lang:StackOverflow

... 这是无用的,因为它没有说明哪个函数落入无限递归。有没有办法找到递归发生的时间?

【问题讨论】:

  • 代码在编译时不应该以不同的方式运行。您是否对代码使用相同的输入?不幸的是,我认为调试已编译的 MATLAB 程序的唯一方法是添加打印语句。
  • 编译的可执行文件中没有调试,这就是为什么你会看到这个令人沮丧的错误消息。某个变量似乎超出了它的限制(stackoverflow——有点讽刺^^)。添加打印语句或注释函数的 prat 以缩小问题范围

标签: matlab out-of-memory infinite-recursion


【解决方案1】:

感谢 Cris Luengo 和 max 的 cmets。 我的应用程序使用 GUI Layout Toolbox 的一部分,但编译器不会查看工具箱文件夹来查找依赖项(不知道为什么),所以我不得不手动添加文件夹。事实证明,GUI 工具箱有一个与我的应用程序中的文件夹同名的文件夹——这就是导致递归的原因。在重命名以避免这种重复和重新编译后,错误消失了,打包的应用程序运行正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-20
    • 1970-01-01
    • 2014-10-21
    • 2016-10-20
    • 2013-01-17
    • 2015-07-25
    相关资源
    最近更新 更多