【发布时间】:2014-07-02 10:21:18
【问题描述】:
我正在尝试将现有 C++ 代码包装到 MATLAB 可调用函数中。我正在使用 Visual Studio 2013 to generate the MEX file 。 MEX 文件已正确创建,我可以从 MATLAB 调用它并来回传递参数而不会出现任何问题。
现在我想调试我的 C++ 逻辑,但我似乎无法让它工作。我创建了一个调用我的函数的 m 脚本,并在调试时让 Visual Studio 运行 MATLAB - 如here 所述。
当我按 F5 调试我的 MEX 文件时,Visual Studio 运行 MATLAB,然后很快退出调试模式,就好像 MATLAB 进程终止了一样。 几秒钟后,MATLAB 开始运行代码。就好像我正在运行的 MATLAB 实例启动另一个实例并终止,让 Visual Studio 感到困惑。
如何调试 MEX 函数?
更新:正如here 所述,显然 MATLAB 正在这样做。添加-wait 参数会使Visual Studio 等到脚本运行完毕,但我设置的断点不起作用——因为正在调试的进程不是加载DLL 的进程。
【问题讨论】:
-
您可能需要在 MATLAB 启动后附加到 MATLAB 进程
-
我希望避免这种情况。我找到了一种解决方案。
标签: c++ matlab visual-studio debugging mex