matlab::data::MATLABFieldIdentifier
MATLAB struct 配列のフィールド名の識別に使用する C++ クラス
説明
クラスの詳細
名前空間: | matlab::data |
インクルード: | MATLABFieldIdentifier.hpp |
コンストラクター
既定のコンストラクター
MATLABFieldIdentifier()
空の MATLABFieldIdentifier を作成します。
なし
コンストラクター
MATLABFieldIdentifier(std::string str)
std::string から MATLABFieldIdentifier を作成します。
| フィールド名を含む文字列。 |
デストラクター
~MATLABFieldIdentifier()
MATLABFieldIdentifier を破棄します。
なし
コピー コンストラクター
MATLABFieldIdentifier(const MATLABFieldIdentifier& rhs)
MATLABFieldIdentifier オブジェクトの共有データ コピーを作成します。
| コピーする値。 |
なし
代入演算子のコピー
MATLABFieldIdentifier& operator=(MATLABFieldIdentifier const& rhs)
MATLABFieldIdentifier オブジェクトに共有データ コピーを代入します。
| 移動させる値。 |
| 更新されたインスタンス。 |
なし
移動コンストラクター
MATLABFieldIdentifier(MATLABFieldIdentifier&& rhs)
MATLABFieldIdentifier オブジェクトの内容を新しいインスタンスに移動させます。
| 移動させる値。 |
なし
移動代入演算子
MATLABFieldIdentifier& operator=(MATLABFieldIdentifier&& rhs)
| 移動させる値。 |
| 更新されたインスタンス。 |
なし
デストラクター
~MATLABFieldIdentifier()
説明
MATLABFieldIdentifier を破棄します。
その他の演算子
operator std::string
operator std::string() const
|
|
なし
フリー関数
operator==
bool operator==(const MATLABFieldIdentifier& rhs) const
2 つの MATLABFieldIdentifier オブジェクトが同一かどうかをチェックします。
| 比較する値。 |
| オブジェクトが同一の場合は true を返します。それ以外の場合は false を返します。 |
なし
例
構造体の内容の取得
構造体フィールド名を使用して、C++ MEX 関数または C++ Engine プログラムに渡される MATLAB® 構造体のデータにアクセスします。
以下は MEX 関数に渡される構造体です。Date フィールドには、関数 datetime によって返される、構造体の作成日が含まれます。Data フィールドには数値が含まれます。
s = struct("Date",string(datetime("today")),"Data",100);
MEX 関数では、入力を StructArray として格納します。メンバー関数 getFieldNames を使用して、構造体フィールド名を表す MATLABFieldIdentifier 要素の範囲を取得します。2 番目の要素を使用して、Data フィールドから数値を取得します。double 型の要素をもつ TypedArray に数値データを格納します。
matlab::data::StructArray inStruct(inputs[0]);
matlab::data::Range<matlab::data::ForwardIterator, matlab::data::MATLABFieldIdentifier const>
fields = inStruct.getFieldNames();
const matlab::data::TypedArray<double> data = inStruct[0][fields.begin()[1]];
double cppData = data[0];バージョン履歴
R2017b で導入