想在c++里使用 matlab 的finv 函数,在一些c++ 科学计算库中也没有找到,octave中有一样的,但是调用比较繁琐。于是决定通过matlab 生成 该函数的c++静态库或动态库。(本文为静态库)
1、使用codegen
中matlab 命令行中分别输入
cfg = coder.config('lib');
codegen finv -config cfg -args {0.025,10,10}
{0.025,10,10}是finv的参数,用于确定参数类型,按类型随便输入即可
vs环境引入库
在属性页vc++目录-包含目录加入 路径
C:\1\matlab2020\extern\include ( 不加会提示缺少一些.h文件)
和d:\codegen\lib\finv
在属性页vc++目录-库目录加入 路径
d:\codegen\lib\finv
属性页-链接器-输入附加依赖项 加入d:\codegen\lib\finv\finv.lib
代码中加入#include"finv.h"
即可使用finv函数
-nargout 1 可设置输出参数为1
如codegen gaminv -config:lib -args {0.025,6,1} -nargout 1