主要内容

Matlab :: Mex :: ArgumentList

用于C ++ MEX功能的输入和输出的容器

描述

C ++ MEX功能通过输入和输出matlab :: data :: Array包含在的对象Matlab :: Mex :: ArgumentList对象。当MexFunction :: Operator()接受两个参数,一个用于输入的参数,一个用于输出,定义为Matlab :: Mex :: ArgumentList

争论列表是一种包装器,可以通过保持输入和输出数据的底层集合来实现迭代。

课程细节

命名空间:

matlab :: mex.

包括:

mex.hpp.

会员职能

运营商[]

Matlab :: Data :: Array Operator [](size_t idx)

启用[]索引到一个元素争论列表

参数

size_t idx.

索引到输入阵列的元素,这是MEX函数的输入参数
回报

matlab :: data :: Array

迭代器指向第一个元素争论列表阵列

例子

从matlab致电MEX功能®使用阵列,标量和字符向量作为输入和单个输出:

A = MyMexfunction(阵列,标量,'字符向量')

将第一个输入参数分配给atypedarray,第二个输入标量const双人间(假设两者都是类型的双人间在matlab中,第三个输入为一个Matlab :: data :: chararray

void运算符()(MATLAB :: MEX ::参数列表输出,MATLAB :: MEX ::参数列表输入){MATLAB ::数据:: TypedArray <双> inArray =输入[0];Const Double Inscalar =输入[1] [0];matlab :: data :: charArray Inchar =输入[2];结果= ...输出[0] =结果;}

开始

iterator_type begin()

返回指向第一个元素的迭代器争论列表阵列。

回报

iterator_type.

迭代器指向第一个元素争论列表阵列

例子

构建输入参数的向量。

void运算符()(MATLAB :: MEX :: ArgumentList输出,Matlab :: Mex :: ArgumentList输入){std :: vector > vectorduble(inputs.begin(),输入。结束());...}

结束

Iterator_type End()

返回一个指向逾期元素的迭代器争论列表阵列。

回报

iterator_type.

迭代器指向过去的最后一个元素争论列表阵列

尺寸

size_t numargs size()

返回参数列表中的元素数。用于检查呼叫站点指定的输入和输出的数量。

回报

size_t.

大小的争论列表阵列

例子

确定MEX函数是否包含三个输入参数。

class mexfunction:public matlab :: mex :: function {public:void运算符()(matlab :: mex :: mex :: mex :: mex :: mex :: mex :: mex :: grestiallist输入){if(inputs.size()== 3){// mex函数调用三个输入参数...}}

空的

Bool空()

返回指示参数列表为空的逻辑值。

回报

BOOL.

返回逻辑真实如果参数列表为空(size()== 0

例子

确定是否调用MEX函数,没有输入参数。

类MexFunction:公共MATLAB :: MEX ::功能{公共:void运算符()(MATLAB :: MEX ::参数列表输出,MATLAB :: MEX ::参数列表输入){如果(inputs.empty()){// MEX函数呼叫没有输入参数...}}
在R2018A介绍