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?

別のルーチンの呼び出し

次の演習を始める前に、モジュールのサブルーチンを他のモジュールから呼び出す構文を学習する必要があります。これまで、ターミナルからの Basic サブルーチン呼び出しは、サブルーチン名とルーチン名の間に “^” を置く ObjectScript 構文 do main^myBASdatent() を使用していました。Basic あるいは ObjectScript のいずれかのサブルーチンを Basic から呼び出すには、サブルーチン名とルーチン名の間に “@” を置く Basic 構文 main@myBASdatent() を使用します。

サブルーチンに引数を渡す場合、Basic と ObjectScript は異なる構文を使用します。

渡す引数
呼び出し元言語 呼び出し先言語 構文
ObjectScript ObjectScript 既定は値渡しです。呼び出しコードは、先行するピリオド (.) 付きの引数で、どの引数が参照渡しされるかを指定します。 do sub^rou(a, .b)
ObjectScript Basic 既定は値渡しです。呼び出しコードは、先行するピリオド (.) 付きの引数で、どの引数が参照渡しされるかを指定します。呼び出されたメソッドのシグニチャは、ByVal あるいは ByRef 引数修飾子を使用する場合もありますが、影響はありません。 do sub^rou(a, .b)
Basic ObjectScript 既定は参照渡しです。呼び出しコードは、先行する ByVal 付きの引数で、どの引数が値渡しされるかを指定します。呼び出しコードは、明確にするために ByRef も使用できます。 sub@rou(ByVal a, b)
Basic Basic この呼び出しは、呼び出されたメソッドのシグニチャに依存します。呼び出しコードは、ByRef あるいは ByVal を使用したシグニチャを上書きできます。 sub@rou(a,b)
FeedbackOpens in a new tab