Массив от 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 на отказе. Возможная причина отказа состоит в том, что pm является NULL.
mexPutVariable делает массив доступным для других сущностей, таких как MATLAB, пользовательские функции или другие MEX-функции.
Если переменная того же имени существует в заданной рабочей области, mexPutVariable перезаписывает предыдущее содержимое переменной с содержимым нового mxArray. Например, предположите, что рабочее пространство MATLAB задает переменную Peaches как:
Peaches 1 2 3 4
и вы вызываете mexPutVariable, чтобы скопировать Peaches в ту же рабочую область:
mexPutVariable("base", "Peaches", pm)Значение, переданное mexPutVariable, заменяет старое значение Peaches.
Смотрите эти примеры в :matlabroot/extern/examples/mex