Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

ProcedureBlock

このクラスの各 ObjectScript メソッドが、規定でプロシージャ・ブロックであるかどうかを指定します。

使用法

このクラスの ObjectScript メソッドが既定でプロシージャ・ブロックになるようにするには、このキーワードを省略するか、または以下の構文を使用します。

Class MyApp.MyClass [ ProcedureBlock ] 
{
//class members
}

あるいは、以下の構文を使用します。

Class MyApp.MyClass [ Not ProcedureBlock ]
{
//class members
}

詳細

このキーワードは、このクラスの ObjectScript メソッドが、既定でプロシージャ・ブロックであるかどうかを指定します。これは、メソッドで ProcedureBlock キーワードを設定することによって、メソッドごとにオーバーライドできます。

このキーワードは、他の言語で記述されたメソッドでは無視されます。

ObjectScript では、メソッドはプロシージャ・ブロックとして実装することも、しないこともできます。プロシージャ・ブロックは、変数の範囲設定を強制します。メソッドからは、呼び出し元で定義されている変数は見えません。新しいアプリケーションはプロシージャ・ブロックを使用しますが、従来のアプリケーションとの互換性を保つために、非プロシージャ・ブロックも存在します。

サブクラスへの影響

このキーワードは継承されません。

既定値

このキーワードを省略すると、このクラス内の各 ObjectScript メソッドは (個々のメソッドに対して指定をオーバーライドしていない限り) プロシージャ・ブロックになります。

関連項目

FeedbackOpens in a new tab