我想在Matlab中调用C++函数,我想我已经正确地编写了我的函数。我想调用的函数看起来像这样,它有8个参数作为输入。在Matlab中调用C++函数,处理二维数组,指针指针?
void LimitedPrice(double &dMarketPosition, double** dmatLimitPrice,
char* FileID, double* dvecOpen, double* dvecClose,
double** dmatTempData, int tick, double dMaxBarBack)
{Bla, Bla, Bla}
我想在运行此函数后得到2个值。它们存储在dMarketPosition和dmatLimitPrice中,因为它们是指针。
在这个函数中,我必须使用一些**(双指针)来表示我的矩阵。
运行此功能后,dMarketPosition,dmatLimitPrice将存储我想要的,因为它们是指针。我测试了我的功能,我相信我的功能已经正确编写。
现在我准备写我的mexFunction()。 我MEX功能在某种程度上是这样的
void mexFunction(int nlhs, mxArray *plhs[],
int nrhs,const mxArray *prhs[])
{
if(nrhs!=8){
mexErrMsgIdAndTxt("LimitPrice: ","I want to 8 inputs");
}
// I want two output
if(nlhs!=2) {