如何在C/C++程序中嵌入GNU Octave?

rey*_*ung 10 c c++ controls octave package

我想使用GNU Octave库计算一些矩阵算法.我知道我可以使用Octave的C/C++ API进行基本使用.但是我想要使用的方法不在Octave的默认包中.那么如何在C/C++程序中使用Octave的控件包呢?

App*_*234 16

像这样的东西

embed.cpp

#include <iostream>
#include <octave/octave.h>

int main(int argc,char* argv)
{
  int embedded;
  octave_main(argc,argv,embedded=0);  
  return embedded;
}
Run Code Online (Sandbox Code Playgroud)

然后

mkoctfile embed.cpp --link-stand-alone -o embed 为了制作一个独立的可执行文件.

要调用八度函数,无论它们是由脚本还是octaveforge模块提供,您都可以使用feval,它将八度函数名称作为字符串,输入变量的octave_value_list作为该函数,以及该函数的变量数量为整数.

请参阅此处获取更多信息.

  • 在这里登陆的任何人都可以深思熟虑:使用嵌入八度音符意味着你必须在许可证等GPL下发布代码http://wiki.octave.org/FAQ#If_I_write_code_using_Octave_do_I_have_to_release_it_under_the_GPL.3F (4认同)