ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

meta.DynamicProperty

MATLAB オブジェクトの動的プロパティの記述

説明

meta.DynamicProperty クラスは、MATLAB® クラスのインスタンスに追加された動的プロパティについての記述的な情報を含みます。MATLAB クラスは、dynamicprops のサブクラスでなければなりません。meta.DynamicProperty クラスのプロパティは、クラス定義内から指定されるプロパティ属性に相当します。動的プロパティは、classdef ブロックでは定義されませんが、meta.DynamicProperty オブジェクトのプロパティを設定して属性を設定することができます。

dynamicprops クラスの addprop メソッドを使用して、動的プロパティをオブジェクトに追加します。addprop メソッドは、meta.DynamicProperty インスタンスを返します。このインスタンスは、新しい動的プロパティを表します。meta.DynamicProperty オブジェクトのプロパティを変更して、動的プロパティの属性を設定したり、set アクセス メソッドと get アクセス メソッドを追加したりすることができます。これを正規のプロパティにするには、classdef で定義します。

meta.DynamicProperty クラスをインスタンス化することはできません。meta.DynamicProperty オブジェクトを取得するには、addprop を使用しなければなりません。動的プロパティをもつオブジェクトの場合は、findprop を使用して meta.DynamicProperty オブジェクトを取得します。

動的プロパティを削除するには、meta.DynamicProperty オブジェクト上で delete ハンドル クラス メソッドを呼び出します。

dynamicprops addprop メソッドは、meta.DynamicProperty オブジェクトの配列を返します。各動的プロパティに対して 1 つのオブジェクトが追加されます。

詳細については、動的プロパティ — インスタンスへのプロパティの追加を参照してください。

プロパティ

プロパティ目的
Name

プロパティの名前です。

Description

現在使用されていません。

DetailedDescription

現在使用されていません。

AbortSet

true である場合、新しい値が現在の値と同じならば MATLAB はプロパティ値を設定しません。この方法では、プロパティ PreSet イベントと PostSet イベントのトリガーを妨げます。

Abstract 属性、既定の設定 = falsetrue である場合、このプロパティは実装されません。ただし、具象サブクラスは、Abstracttrue に設定せずにこのプロパティを再定義しなければなりません。
  • Abstract プロパティは、set access または get アクセス メソッドを定義できません。プロパティ アクセス メソッドを参照してください。

  • Abstract プロパティは、初期値を定義できません。 既定値を割り当てる

  • すべてのサブクラスは、プロパティの SetAccessGetAccess 属性に、スーパークラスと同じ値を指定しなければなりません。

  • Abstract=true は、クラス属性を Sealed=false (既定の設定) とした場合に使用します。

Access

動的プロパティの Access 属性は、動的プロパティを含むインスタンスのクラスに対して適用されます。詳細については、動的プロパティの Access 属性を参照してください。

public – アクセス制限なし

protected – クラスまたはサブクラスからのアクセス

private - クラス メンバーからのアクセスのみ (サブクラスからは不可)

このプロパティに get および set アクセスのあるクラスのリスト。次の形式で meta.class オブジェクトとしてクラスを指定します。

  • 単一の meta.class オブジェクト

  • meta.class オブジェクトの cell 配列。空の cell 配列 {}private アクセスと同じです。

SetAccessGetAccess が同じ値をもつように設定するには、Access を使用します。SetAccessGetAccess の値を直接クエリする (Access ではない)。

Constant 属性、既定の設定 = false

動的プロパティの Constant 属性の設定は許可されていません。動的プロパティを定数にすることはできません。

DefaultValue

動的プロパティは既定値を定義できないため、このプロパティをクエリすると、エラーが返されます。

DefiningClassこのプロパティを定義するクラスを表す meta.class オブジェクト。
GetAccess 属性、既定の設定 = public

public – アクセス制限なし

protected – クラスまたはサブクラスからのアクセス

private – クラス メンバーからのみアクセス

SetAccess 属性、既定の設定 = public

public – アクセス制限なし

protected – クラスまたはサブクラスからのアクセス

private – クラス メンバーからのみアクセス

Dependent 属性、既定の設定 = false

false の場合、プロパティ値はオブジェクトに保存されます。true の場合、プロパティ値はオブジェクトに保存されません。関数 set と get は、プロパティ名を使用してオブジェクトにインデックス付けする方法では、プロパティにアクセスできません。

プロパティの get メソッドを参照してください。

Transient 属性、既定の設定 = false

true の場合、オブジェクトがファイルに保存されるときに、プロパティ値は保存されません。オブジェクトの保存の詳細は、オブジェクトの保存と読み込みのプロセスを参照してください。

Hidden 属性、既定の設定 = falseプロパティがプロパティ リスト (たとえば、プロパティ インスペクター、properties の呼び出しなど) に表示するかどうかを指定します。

NonCopyable

既定 = false

オブジェクトをコピーする際に動的プロパティをコピーすべきかどうかを判定します。既定では、動的プロパティはコピーされません。

詳細については、コピーのプロパティの排除を参照してください。

GetObservable 属性、既定の設定 = falsetrue の場合は、このプロパティにアクセスするためのリスナーを作成できます。このリスナーは、プロパティ値がクエリされるたびに呼び出されます。プロパティの設定とクエリのイベントを参照してください。
SetObservable 属性、既定の設定 = falsetrue の場合は、このプロパティにアクセスするためのリスナーを作成できます。このリスナーは、プロパティ値が変更される場合に呼び出されます。プロパティの設定とクエリのイベントを参照してください。
GetMethod このプロパティに関連付けられた get メソッドの関数ハンドル。指定された get メソッドがなければ、空です。Get メソッドの構文を参照してください。
SetMethod このプロパティに関連付けられた set メソッドの関数ハンドル。指定された set メソッドがなければ、空です。プロパティ の set メソッドを参照してください。
HasDefault

常に false。動的プロパティは、既定値を定義できません。

イベント

プロパティ イベントの使用の詳細は、プロパティ値変更のリスニングを参照してください。

イベント名目的
PreGetイベントは、プロパティがクエリされる直前に発生します。
PostGetイベントは、プロパティがクエリされた直後に発生します。
PreSetイベントは、このプロパティが変更される直前に発生します。
PostSetイベントは、このプロパティが変更された直後に発生します。
ObjectBeingDestroyedハンドルから継承します。