clibArray

Создайте MATLAB clib массив для библиотечных функций C++

Описание

пример

cArray = clibArray(elementTypeName,dimensions) создает clib array, MATLAB® объект, представляющий объект C++ elementTypeName с размерностями C++, заданными как [x1,...,xN]. Если объект C++ является типом примитива, то cArray содержит нулевые значения. Если объект C++ является типом класса, то MATLAB инициализирует cArray использование конструктора по умолчанию.

MATLAB clib массив может быть задан только когда соответствующий собственный массив C++ или std::vector используется поддерживаемыми построениями C++ — аргументы функции, функция возвращается, и элементы данных.

В качестве альтернативы, если тип элемента является фундаментальным типом, пользовательским классом с конструктором по умолчанию или стандартным строковым типом, вызовите clib.array конструктор. Например, для elementTypeName заданный в libname:

cArray = clib.array.libname.elementTypeName(dimensions)

Память о cArray принадлежит MATLAB. Чтобы выпустить память, вызвать clibRelease.

Чтобы преобразовать массив MATLAB в массив C++, вызвать clibConvertArray.

Примеры

свернуть все

Предположим, что у вас есть библиотека libname с классом myclass.

Создайте пустой массив пяти myclass объекты.

myclassArray = clibArray('clib.libname.myclass',5);
class(myclassArray)
ans = 
    'clib.array.libname.myclass' 

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

свернуть все

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

MATLAB преобразует имена основных типов C++ к верхнему Camel-регистру. Например, elementTypeName поскольку C++ вводит signed int SignedInt.

Тип является полностью определенным именем типа C++. Например, если библиотека libname задает класс myclass, затем elementTypeName clib.libname.myclass.

Пример: clib.libname.Double

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

Число элементов в каждой размерности массива в виде целых чисел [x1,...,xN].

Пример: [2,3]

Введенный в R2020a
Для просмотра документации необходимо авторизоваться на сайте