feval

Класс: matlab.mex.MexHost
Пакет: matlab.mex

Оцените функцию C++ MEX в процессе хоста MEX

Синтаксис

[result1,...,resultN] = feval(mexHost,mexFunctionName,input1,...,inputM)

Описание

[result1,...,resultN] = feval(mexHost,mexFunctionName,input1,...,inputM) оценивает именованную функцию C++ MEX в процессе хоста MEX и возвращает результаты. Можно запустить несколько функций C++ MEX в одном хост-процессе.

Входные параметры

расширить все

Процесс узла MEX, заданный как matlab.mex.MexHost объект. Создайте хост-процесс MEX с помощью mexhost функция.

Имя функции C++ MEX, которая выполняется, задается как вектор символов или строковый скаляр.

Пример: "myMexFunction"

Типы данных: char | string

Входы в функцию C++ MEX. Количество и тип значений, которые могут быть заданы как входы, зависят от функции C++ MEX.

Выходные аргументы

расширить все

Результаты оценки функции C++ MEX. Количество и тип возвращаемых значений зависят от функции C++ MEX.

Примеры

расширить все

Создайте хост-процесс MEX и запустите функцию C++ MEX в этом процессе.

The arrayProduct.cpp C++ Файл MEX содержит исходный код для функции, которая умножает массив на скаляр вход и возвращает полученный массив. Откройте этот файл и сохраните его на своем MATLAB® путь. Создайте исходный файл C++ MEX с помощью mex команда. Следуйте инструкциям в Build C++ MEX Programs, чтобы настроить сборку MEX.

mex arrayProduct.cpp

Создайте хост-процесс. mexhost функция возвращает matlab.mex.MexHost объект.

mh = mexhost;

Используйте feval метод matlab.mex.MexHost объект для вычисления функции C++ MEX в процессе хоста.

result = feval(mh,"arrayProduct",10,[2,4,6,8])
result =

    20    40    60    80
Введенный в R2019a