Эти таблицы показывают, как типы данных MATLAB® соответствуют фиксированной ширине типы C++.
C целочисленный тип Фиксированной Ширины | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Эта таблица показывает, как типы данных MATLAB соответствуют std::vector
типы. По умолчанию MATLAB представляет std::vector
типы с clib.array
MATLAB ввод. Для получения дополнительной информации смотрите Объект MATLAB Для Массивов C++.
C++ std::vector<T> Ввод | Эквивалентный MATLAB |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C тип с плавающей точкой | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
C++ std::vector<T> Тип с плавающей точкой | Эквивалентный MATLAB |
---|---|
|
|
|
|
Другой тип C | Эквивалентный тип MATLAB |
---|---|
|
|
Другой std::vector<T> C++ Ввод | Эквивалентный MATLAB |
---|---|
|
|
MATLAB поддерживает их "не зафиксированная ширина" C целочисленные типы. На основе используемого компилятора MATLAB сопоставляет эти типы с соответствующей фиксированной шириной C типы, как показано в таблицах Fixed-Width Data Types.
short
short int
signed short
signed short int
unsigned short
unsigned short int
int
signed int
unsigned
unsigned int
long
signed long
signed long int
unsigned long
unsigned long int
long long
Эти таблицы показывают, как MATLAB преобразует string
и char
данные, возвращенные в C++ в типы MATLAB.
Тип символов C++ | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
|
|
|
|
Строковый тип C++ | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
|
|
const char * Типы символов и строковые типы | Эквивалентный тип MATLAB |
---|---|
| То же самое как
|
| скалярный |
Тип символов Точной Ширины C++ | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
Эти таблицы показывают, как вызвать C++ пользовательский тип в библиотеке libname
интерфейса MATLAB.
C++ пользовательский тип | Эквивалентный тип MATLAB |
---|---|
|
|
|
|
Тип класса C++ | Эквивалентный MATLAB |
---|---|
|
|
|
|
|
|
nullptr
Типы аргументаnullptr
Типы входного параметраMATLAB обеспечивает clib.type.nullptr
введите так, чтобы можно было передать NULL функции с этими типами входного параметра C++:
Указатели на объекты. Однако указатели на основные типы массива MATLAB не поддерживаются.
shared_ptr
Массивы
clib.type.nullptr
тип поддерживается для этих типов аргумента MATLAB:
скалярные объектные указатели
clib
массивы
nullptr
Возвратите типыИнтерфейс C++ возвращает специфичный для типа empty
значения для функций, которые возвращают nullptr
.
Для типа double
, MATLAB возвращает []
для значения double.empty
.
Для всех других фундаментальных типов, MATLAB возвращает
значение. Определить MLTYPE
пустойMLTYPE
, ищите C или тип C++ в таблицах в этой теме. MLTYPE
находится в столбце Equivalent MATLAB Type.
Протестировать на nullptr
типы, вызовите isempty
функция.
Для нефундаментальных типов, MATLAB возвращает nullptr
объект. Протестировать на nullptr
объекты, вызовите clibIsNull
функция.
Если тип данных типа аргумента/возвращаться в конструкторе класса, методе или функции является одним из этих типов, или если библиотека содержит какие-либо неподдерживаемые функции языка, то функциональность не включена в интерфейс MATLAB к библиотеке.
Любой тип с размером, больше, чем 64 бита, например, long double
void *
Массивы типов символов (wchar_t
, char16_t
, char32_t
)
Указатели или массивы std::string
Ссылки на указатель в функции
Указатели или ссылки на перечисления
Члены справочных данных
std
интеллектуальные указатели кроме std::shared_ptr
Статические элементы данных
**
указатели на типы примитивов, такие как double**
. MATLAB поддерживает **
указатели на пользовательские классы, используемые в качестве функции или method типов параметра.
Многоуровневые указатели, такие как type
***
Указатель функции
Шаблоны классов с неполным или никакими инстанцированиями
union
Эти типы заданы в std
пространство имен поддерживается. Все другие типы в std
пространство имен не поддерживается.
std::string
, std::wstring
, std::u16string
, std::u32string
std::vector
std::shared_ptr
MATLAB сообщает относительно построений о том использовании неподдерживаемые типы. Чтобы просмотреть эти сообщения, используйте 'Verbose'
опция в clibgen.generateLibraryDefinition
или clibgen.buildInterface
функции.
Например, предположите тот functionName
в ClassName
задан в HeaderFile.h
. Если аргумент к functionName
имеет неподдерживаемый тип type
, затем MATLAB не добавляет functionName
к файлу определения. Кроме того, если 'Verbose'
true
, затем clibgen.generateLibraryDefinition
отображения это сообщение.
Did not add member 'functionName' to class 'ClassName' at HeaderFile.h:290. 'type' is not a supported type.
clibgen.buildInterface
| clibgen.generateLibraryDefinition