Main Content

matlab::data::Array

すべての配列型の C++ 基底クラス

説明

Array オブジェクトを使用して 1 次元または多次元の配列を表します。Array クラスは、次元数や型など、すべての配列に関する汎用情報を取得するメソッドを提供します。このクラスは、ディープ (クローン) コピーを作成するメソッドと共有データ コピーを作成するメソッドの両方を有し、コピーオンライト セマンティクスをサポートします。

Array オブジェクトを作成するには、ArrayFactory メソッドを使用します。

クラスの詳細

名前空間:

matlab::data

インクルード:

MDArray.hpp

コンストラクター

既定のコンストラクター

Array()

スロー

なし

コピー コンストラクター

Array(const Array& rhs)

説明

Array オブジェクトの共有データ コピーを作成します。

パラメーター

const Array& rhs

コピーする値。

スロー

なし

代入演算子のコピー

Array& operator=(const Array& rhs)

説明

Array オブジェクトに共有データ コピーを代入します。

パラメーター

const Array& rhs

コピーする値。

戻り値

Array&

更新されたインスタンス。

スロー

なし

移動コンストラクター

Array(Array&& rhs)

説明

Array オブジェクトの内容を新しいインスタンスに移動させます。

パラメーター

Array&& rhs

移動させる値。

スロー

なし

移動代入演算子

Array& operator=(Array&& rhs)

説明

この Array オブジェクトに入力を代入します。

パラメーター

Array&& rhs

移動させる値。

戻り値

Array&

更新されたインスタンス。

スロー

なし

デストラクター

virtual ~Array()

インデックス演算子

operator[]

ArrayElementRef<false> operator[](size_t idx)

ArrayElementRef<true> operator[](size_t idx) const

説明

const 配列および非 const 配列に対する [] インデックスを有効にします。インデックスは 0 ベースです。

パラメーター

size_t idx

最初の配列インデックス

戻り値

ArrayElementRef<false>

指定されたインデックスを含む一時オブジェクト。戻り値により配列の要素の変更や取得ができます。

ArrayElementRef<true>

指定されたインデックスを含む一時オブジェクト。戻り値により配列の要素の取得が可能ですが、変更はできません。

スロー

なし

メンバー関数

getType

ArrayType getType() const
戻り値

ArrayType

配列の型。

スロー

なし

getMemoryLayout

MemoryLayout getMemoryLayout() const
戻り値

MemoryLayout

配列のメモリ レイアウト。MemoryLayout::COLUMN_MAJOR または MemoryLayout::ROW_MAJOR として指定します。

スロー

matlab::data::FeatureNotSupportedException

R2019a より前に作成された配列では、別のメモリ レイアウトのサポートはありませんでした。メモリ レイアウトは常に列優先です。

getDimensions

ArrayDimensions getDimensions() const
戻り値

ArrayDimensions

配列の各次元のベクトル。

スロー

なし

getNumberOfElements

size_t getNumberOfElements() const
戻り値

size_t

配列の要素数。

スロー

なし

isEmpty

bool isEmpty() const
戻り値

bool

配列が空の場合は true です。配列が空でない場合は false です。

スロー

なし

フリー関数

getReadOnlyElements

template <typename T>
Range<TypedIterator, T const> getReadOnlyElements(const Array& arr)
説明

Array の要素を含む範囲を取得します。範囲に含まれる反復子は const です。

パラメーター

const Array& arr

Array

戻り値

Range<TypedIterator, T const>

入力 Arraybegin 反復子および end 反復子を含む範囲。

スロー

matlab::data::InvalidArrayTypeException

Array には T 型は含まれません。

getWritableElements

template <typename T>
Range<TypedIterator, T> getWritableElements(Array& arr)
説明

Array の要素を含む範囲を取得します。範囲に含まれる反復子は非 const です。

パラメーター

Array& arr

Array

戻り値

Range<TypedIterator, T>

入力 Arraybegin 反復子および end 反復子を含む範囲。

スロー

matlab::data::InvalidArrayTypeException

Array には T 型は含まれません。

バージョン履歴

R2017b で導入

すべて展開する