defineOutput

Класс: clibgen.FunctionDefinition
Пакет: clibgen

Добавьте определение выходного аргумента для функции пакета C++

Синтаксис

defineOutput(funcDef,argName,mltype)
defineOutput(funcDef,argName,mltype,shape)
defineOutput(___,argDesc)
defineOutput(___,'DeleteFcn',deleteFcn)

Описание

defineOutput(funcDef,argName,mltype) добавляет определение выходного аргумента для функции пакета C++.

defineOutput(funcDef,argName,mltype,shape) предоставляет информацию о размерностях данных.

defineOutput(___,argDesc) добавляет описание аргумента и может включать любой из входных параметров в предыдущих синтаксисах.

defineOutput(___,'DeleteFcn',deleteFcn) задает функцию средства удаления библиотеки C++, чтобы управлять памятью об аргументе.

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

развернуть все

Функциональное определение в виде clibgen.FunctionDefinition объект.

Выходной аргумент C++ называет в виде строкового скаляра или вектора символов.

MATLAB® введите в виде строкового скаляра или вектора символов. Для получения дополнительной информации смотрите, Задают Пропавших без вести Параметр MLTYPE.

Определение размерности, используемое MATLAB, чтобы задать размерности данных в виде вектора строки, скалярного текста, положительного целочисленного вектора, "nullTerminated", или массив ячеек. Для массива ячеек элементами является комбинация скалярного текста и скалярных положительных целых чисел. Для получения дополнительной информации смотрите, Задают Недостающий Параметр SHAPE.

Если можно задать размерность аргумента как фиксированное скалярное значение, то введите номер, такой как 5.

Если размерность задана другим аргументом, то введите имя аргумента как строку. Например, рассмотрите следующую подпись C++. Если аргумент len задает длину data, затем значение Shape "len".

myFunc(const int *data, int len)

Если размер аргумента задан массивом, то значение Shape одно из следующего:

  • 1

  • Фиксированные размерности: Введите числовой массив, такой как [5,2].

  • Переменные размерности: Введите массив строк названий параметра, таких как ["row","col"].

Если тип C++ для аргумента является строкой, то используйте эти опции, чтобы выбрать значения для MATLABType и Shape аргументы.

Тип C++MATLABTypeDIRECTIONОпции для SHAPE
char*[a]

"int8"

"input"

Скалярное значение
Массив скалярных значений

char**
char*[]

"string"

"input"вектор
const char*

"char"

 

Скалярное значение
Массив скалярных значений

"string"

"input"

"nullTerminated"

const char**
const char*[]

"char"

"input"

Скалярное значение
Массив скалярных значений

"string"

"input"

"nullTerminated"

[a] Эти типы эквивалентны MATLAB char:

  • wchar_t

  • char16_t

  • char32_t

Для получения дополнительной информации смотрите C++ к Отображению типа данных MATLAB.

Описание аргумента C++ в виде строкового скаляра или вектора символов.

Функция средства удаления в виде строкового скаляра или вектора символов. Средство удаления может быть стандартом C++ delete оператор или пользовательская функция. Если C++ возвращается, типом является void*, затем deleteFcn должна быть пользовательская функция. Если функция возвращает указатель, то MATLAB берет владение и управляет жизненным циклом памяти, представленной аргументом. Если deleteFcn не задан, затем библиотека ответственна за управление память.

Если вы задаете библиотечную функцию для функции средства удаления, то эта функция не включена в интерфейс, и пользователи не могут вызвать функцию из MATLAB. Пользователь MATLAB вызывает MATLAB delete функция, которая вызывает функцию, заданную deleteFcn.

Пример: 'DeleteFcn','objFree'

Введенный в R2019a