我有一个MEX文件,我从其他人那里“借来”以帮助我编写半自动核探测算法。问题是MEX文件偶尔会导致分段错误。但是,如果代码第二次使用相同的参数运行,那就很好了。
我希望对MEX文件有一种try/catch
习惯用法,但是在周六的大部分时间里都在寻找一些东西之后,我什么都找不到。
在这个问题上的任何帮助将是惊人的!否则,我将不得不将.cpp
移植到MATLAB中(使用数百个依赖项:-()大约需要10,000行。
最佳答案
您正在使用哪个平台?有一些方法可以帮助调试MEX文件。每当出现分段错误时,您都可以使用IDE告诉您崩溃在代码中的何处。
这是Mac OS的使用说明:http://www.mathworks.com/help/matlab/matlab_external/debugging-on-mac-platforms.html
这是Linux的说明:http://www.mathworks.com/help/matlab/matlab_external/debugging-on-linux-platforms.html
这是Windows的说明:http://www.mathworks.com/help/matlab/matlab_external/debugging-on-microsoft-windows-platforms.html
注意:我反对将OP引至站点外链接以帮助解决他或她的问题。通常,我的帖子中都会包含大多数答案,并提供链接作为引用。因为您没有告诉我您使用的平台,所以我不会为所有平台编写解决方案,因为这将花费太多时间。因此(我为链接可以稳定很长时间祈祷),您可以引用适合您平台的链接。