![34af2ceb784ae6a9e1e53648613c9eee.png](https://i-blog.csdnimg.cn/blog_migrate/e7a598add78746142ec8fdaffd5bd1c7.jpeg)
mex是MATLAB运行C/C++代码的一种手段, 一旦完成, 使用方法和普通的MATLAB函数是一样的.之所以使用它, 主要目的是为了提速. 当你使用了一切MATLAB技巧(向量化, 并行循环, profiler等), 速度还是不够快的时候, mex是一个大杀器(当然, 大杀器不能轻易使用 :) , 因为你要用C/C++语言来写, 一般比较花时间, 使用MATLAB的人一般就是看重MATLAB的快速编程优势)
mex一般有两种生成方法:
第一种, 借助coder, 自动生成mex
优势是: 1 快速生成 2 一般是没有bug的
缺点: 1部分MATLAB函数不被coder不支持 2 生成的mex速度有可能还不如MATLAB的普通函数. 原因是自动化生成的东西, 有大量冗余在里面.
我在这篇文章里面也介绍过一点coder.
芷菡:完全没办法看内置函数的源代码了吗?zhuanlan.zhihu.com![a52345fdf28a1acabc47b8ce47e1b8ff.png](https://i-blog.csdnimg.cn/blog_migrate/bd0b8226dff444ffe95c1f428a72739d.png)
第二种, 自己手工写C/C++代码