Массив от MEX-функции в заданную рабочую область
#include "mex.h" int mexPutVariable(const char *workspace, const char *varname, const mxArray *pm);
Чтобы записать MEX-функции, использующие современные функции C++ и MATLAB Data API, см. Приложения C++ MEX.
Вызовите mexPutVariable
скопировать mxArray
, в указателе pm
, от вашей MEX-функции в заданную рабочую область. MATLAB® присваивает varname
к mxArray
скопированный в рабочей области. Функция возвращает 0
на успехе; 1
onFailure. Возможной причиной отказа является тот pm
isNull
.
mexPutVariable
делает массив доступным для других сущностей, таких как MATLAB, пользовательские функции или другие MEX-функции.
Если переменная того же имени существует в заданной рабочей области, mexPutVariable
перезаписывает предыдущее содержимое переменной с содержимым нового mxArray
. Например, предположите, что рабочее пространство MATLAB задает переменную Peaches
как:
Peaches 1 2 3 4
и вы вызываете mexPutVariable
скопировать Peaches
в ту же рабочую область:
mexPutVariable("base", "Peaches", pm)
Значение передается mexPutVariable
заменяет старое значение Peaches
.
Смотрите эти примеры в
:matlabroot
/extern/examples/mex