我需要使用 Matlab 中由 dll 文件定义的函数。我有一个例子,那个家伙将 dll 转换为 mexw32 文件,但我知道我是如何做到这一点的。我尝试使用加载库但它没有创建任何文件。
我怎样才能做到这一点?
loadlibrary http://www.mathworks.com/help/matlab/using-c-shared-library-functions-in-matlab-.html是 MATLAB 的实现FFI http://en.wikipedia.org/wiki/Foreign_function_interface服务,一种调用外部共享库中函数的机制。它涉及在 C 类型与其等效的 MATLAB 数据类型之间进行转换以传递数据。
MEX 文件 http://www.mathworks.com/help/matlab/matlab_external/c-c-source-mex-files.html也是一种动态链接库(带有.mex*
扩展名),可以直接在 MATLAB 中作为常规函数运行,无需任何特殊语法。
不同之处在于它有一个特定的网关例程,称为mexFunction http://www.mathworks.com/help/matlab/apiref/mexfunction.html,它接收输入和输出mxArray
type. mxArray http://www.mathworks.com/help/matlab/apiref/mxarray.html是定义在中的不透明类型mex.h
头文件,它是所有 MATLAB 数据的基本类型。您通常使用以下函数来操作这些数据MEX 库 API http://www.mathworks.com/help/matlab/programming-interfaces-for-c-c-fortran-com.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)