ProcedureBlock
使用法
クラス定義は、クラス内のメソッドが、既定でプロシージャ・ブロックであるかどうかを指定します。既定をオーバーライドして、特定のメソッドがプロシージャ・ブロックであることを指定するには、以下の構文を使用します。
Method name(formal_spec) As returnclass [ ProcedureBlock ] { //implementation }
または (同様に)
Method name(formal_spec) As returnclass [ ProcedureBlock=1 ] { //implementation }
そのようにせずに、特定のメソッドがプロシージャ・ブロックでないことを指定するには、以下の構文を使用します。
Method name(formal_spec) As returnclass [ ProcedureBlock=0 ] { //implementation }
詳細
このキーワードは、ObjectScript メソッドがプロシージャ・ブロックであることを指定します。
ObjectScript では、メソッドはプロシージャ・ブロックとして実装することも、しないこともできます。プロシージャ・ブロックは、変数の範囲設定を強制します。メソッドからは、呼び出し元で定義されている変数は見えません。新しいアプリケーションはプロシージャ・ブロックを使用しますが、従来のアプリケーションとの互換性を保つために、非プロシージャ・ブロックも存在します。
既定値
このキーワードを省略すると、クラス・レベルの ProcedureBlock キーワードの値が使用されます。
関連項目
-
このドキュメントの “メソッド定義”
-
Caché オブジェクトの使用法 の “メソッドの定義と呼び出し”
-
Caché オブジェクトの使用法 の “メソッド・ジェネレータとトリガ・ジェネレータの定義”
-
Caché オブジェクトの使用法 の “コンパイラ・キーワードの概要”