Matlab mex文件在windows上崩溃-无法调试

Matlab mex文件在windows上崩溃-无法调试,matlab,runtime-error,visual-studio-debugging,mex,Matlab,Runtime Error,Visual Studio Debugging,Mex,我有一个我编译的mex文件 >> mex -g myMex.cpp 我在几个输入上运行了它,它工作得很好。 突然,对于特定的输入,它会使机器崩溃 按照说明,我将调试程序连接到Matlab进程,并在我的mexFunction的第一行中设置断点 但是,当我厌倦调试VisualStudio和Matlab崩溃[ > 在MeX C++代码中被打断断点! 有人遇到过这样令人沮丧的行为吗?如果崩溃发生在我可以在调试器中停止之前,我如何调试此崩溃?这并不是您想要的答案,但由于与您描述的问题类似,我

我有一个我编译的mex文件

>> mex -g myMex.cpp
我在几个输入上运行了它,它工作得很好。
突然,对于特定的输入,它会使机器崩溃

按照说明,我将调试程序连接到Matlab进程,并在我的
mexFunction
第一行中设置断点

<>但是,当我厌倦调试VisualStudio和Matlab崩溃[<强> > 在MeX C++代码中被打断断点!
有人遇到过这样令人沮丧的行为吗?如果崩溃发生在我可以在调试器中停止之前,我如何调试此崩溃?

这并不是您想要的答案,但由于与您描述的问题类似,我总是发现Matlab MEX文件的可视化调试非常复杂,麻烦太多。通过在主
mexFunction
例程中插入
mexPrintf
和/或
return
语句,可以更快地跟踪问题。

与Win7-MatLab 2013a附加相同的内容。我试着调试Mexopencv。我什么也没找到,所以我放弃了。@AlexandreBizeau出于某种原因,visual studio似乎不会在我的断点处停止(而是崩溃)。我怀疑我没有使用正确的编译/链接标志。。。我设法在旧的注释/打印/编译方法中找到了我的错误:(…@Shai:你能想出一个我们可以测试的可复制的小案例吗?同时请说明你的操作系统、MATLAB和VS版本。使整个机器崩溃是一个非常严重的错误!对我来说,情况从来都不一样,有时MATLAB会因分段错误而崩溃。或者什么都没有发生,比如visual studio中没有中断,MATLAB在不崩溃的情况下完美地运行代码。我在这个问题上没有做太多的研究。但是我想知道怎么做。我不用调试器就解决了我的问题,但我以后肯定需要。@AlexandreBizeau:当你在调试模式下编译时,你将链接到另一个版本的CRT,并启用额外的检查来检测内存损坏和类似错误。这通常解释了在使用优化与调试标志编译时,您会看到不同之处。至于调试,您自己从源代码编译OpenCV通常会有所帮助,而不是依赖提供的预编译二进制文件。感谢您的回答。我已经使用mex文件好几年了,在可视化调试方面从未遇到任何问题。事实上,我与其他任何方法相比,我更喜欢这种方法。曾经,我在Linux机器上也没有这些功能,这让我非常困扰。