Main Content

matlab::data::ArrayType

C++ 配列型列挙値クラス

説明

ArrayType オブジェクトを使用して、MATLAB® 配列のデータ型および他の属性を識別します。

クラスの詳細

名前空間:

matlab::data

インクルード:

ArrayType.hpp

列挙値

enum class ArrayType {
    UNKNOWN,
    LOGICAL,
    CHAR,
    DOUBLE,
    SINGLE,
    INT8,
    UINT8,
    INT16,
    UINT16,
    INT32,
    UINT32,
    INT64,
    UINT64,
    COMPLEX_DOUBLE,
    COMPLEX_SINGLE,
    COMPLEX_INT8,
    COMPLEX_UINT8,
    COMPLEX_INT16,
    COMPLEX_UINT16,
    COMPLEX_INT32,
    COMPLEX_UINT32,
    COMPLEX_INT64,
    COMPLEX_UINT64,
    CELL,
    STRUCT,
    VALUE_OBJECT,
    HANDLE_OBJECT_REF,
    ENUM,
    SPARSE_LOGICAL,
    SPARSE_DOUBLE,
    SPARSE_COMPLEX_DOUBLE,
    MATLAB_STRING
};

C++ データ型の変換

MATLAB ArrayType の値

C++ の型説明
DOUBLE

double

倍精度 (64 ビット)、浮動小数点数

SINGLE

float

単精度 (32 ビット)、浮動小数点数

INT8

int8_t

符号付き 8 ビット整数

UINT8

uint8_t

符号なし 8 ビット整数

INT16

int16_t

符号付き 16 ビット整数

UINT16

uint16_t

符号なし 16 ビット整数

INT32

int32_t

符号付き 32 ビット整数

UINT32

uint32_t

符号なし 32 ビット整数

INT64

int64_t

符号付き 64 ビット整数

UINT64

uint64_t

符号なし 64 ビット整数

CHAR

char16_t

16 ビット文字

LOGICAL

bool

logical

COMPLEX_DOUBLE

std::complex<double>

複素数、倍精度 (64 ビット)、浮動小数点数

COMPLEX_SINGLE

std::complex<float>

複素数、単精度 (32 ビット)、浮動小数点数

COMPLEX_INT8

std::complex<int8_t>

複素数、符号付き 8 ビット整数

COMPLEX_UINT8

std::complex<uint8_t>

複素数、符号なし 8 ビット整数

COMPLEX_INT16

std::complex<int16_t>

複素数、符号付き 16 ビット整数

COMPLEX_UINT16

std::complex<uint16_t>

複素数、符号なし 16 ビット整数

COMPLEX_INT32

std::complex<int32_t>

複素数、符号付き 32 ビット整数

COMPLEX_UINT32

std::complex<uint32_t>

複素数、符号なし 32 ビット整数

COMPLEX_INT64

std::complex<int64_t>

複素数、符号付き 64 ビット整数

COMPLEX_UINT64

std::complex<uint64_t>

複素数、符号なし 64 ビット整数

CELL

matlab::data::Array

他の Array を含む配列

STRUCT

matlab::data::Struct

さまざまな型とサイズのデータを含むことのできる名前付きフィールドをもつ配列

VALUE_OBJECT

matlab::data::Object

MATLAB 値オブジェクト

HANDLE_OBJECT_REF

matlab::data::Object

MATLAB の既存ハンドル オブジェクトへの参照

ENUM

matlab::data::Enumeration

列挙値の配列

SPARSE_LOGICAL

bool

logical のスパース配列

SPARSE_DOUBLE

double

double のスパース配列

SPARSE_COMPLEX_DOUBLE

std::complex<double>

double 型複素数のスパース配列

MATLAB_STRING

matlab::data::MATLABString

MATLAB string

COMPLEX_DOUBLE 型についての配列のテスト

以下のように宣言されている配列があると仮定します。

matlab::data::TypedArray<double> const argArray

argArray の値を設定後に、関数 sqrt を呼び出します。

matlab::data::Array const tresults = matlabPtr->feval(u"sqrt", argArray);

以下のステートメントは、COMPLEX_DOUBLE 型について結果をテストし、配列の型を設定します。

matlab::data::TypedArray<std::complex<double>> results = factory.createEmptyArray(); 
matlab::data::ArrayType type = tresults.getType(); 
if (type == matlab::data::ArrayType::COMPLEX_DOUBLE) 
    results = (matlab::data::TypedArray<std::complex<double>>) tresults; 
else 
    std::cout << "ERROR: complex double array expected." << std::endl;

バージョン履歴

R2017b で導入