Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

$THIS (ObjectScript)

現在のクラス・コンテキストを含みます。

Synopsis

$THIS

説明

$THIS は、現在のクラス・コンテキストを含みます。インスタンス・メソッドのクラス・コンテキストは、現在のオブジェクト参照 (OREF) です。クラス・メソッドのクラス・コンテキストは、文字列値としての現在のクラス名です。例えば、クラス・メソッド内から DO ..method() コマンドまたは SET ..property = value コマンドを発行すると、.. コンテキストは、$THIS の現在の値を使用して解決されます。オブジェクト・インスタンス内で参照を作成する場合は、相対ドット構文 (..) をお勧めします。

$THIS は通常、オブジェクト・インスタンス内で、別のオブジェクトにある関数を呼び出すときに使用されます。この場合、$THIS を使用し、現在のクラス・コンテキストをその関数に渡して、現在のオブジェクト・インスタンスに値を返すようにすることができます。

$THIS に有効なオブジェクト参照が含まれていない場合、InterSystems IRIS は <NO CURRENT OBJECT> エラーを返します。

$THIS は、以下のようなコンテキストで使用できます。

SET x = ##class(otherclassname).method($THIS)

DO ##class(superclass)$THIS.method(args)

この特殊変数では、SET コマンドを使用して値を設定することはできません。設定しようとすると、<FUNCTION> エラーが返されます。

詳細は、"クラスの定義と使用" の "オブジェクト特有の ObjectScript の機能" の章にある “$this 構文” を参照してください。OREF の詳細は、"クラスの定義と使用" の “OREF の基本” を参照してください。

関連項目

FeedbackOpens in a new tab