LRESULT
タイプ定義 LRESULTmcadincl.h に表示されます。MyCFunction はカスタム関数を実行するコードです。PTC Mathcad 引数と、値を返すポインタがこの関数に渡されます。計算の結果が戻り値に入ります。
LRESULT MyCFunction(returnValue, argument1,...)
void * const returnValue;
const void * const argument1;
...
パラメータ
説明
returnValue
関数の結果を格納する COMPLEXARRAYCOMPLEXSCALAR、または MCSTRING 構造を指し示します。
スカラーを返すカスタム関数を実装している場合、returnValueCOMPLEXSCALAR 構造へのポインタであり、これは LPCOMPLEXSCALAR 構造による実装と同様です。
argument1
最初の関数の引数が格納される読み取り専用の COMPLEXARRAYCOMPLEXSCALAR、または MCSTRING 構造を指し示します。
最初の引数としてスカラーをとるカスタム関数を実装している場合、argument1LPCCOMPLEXSCALAR 構造へのポインタです。
...
2 つ以上の引数をとるカスタム関数を実装している場合、MyCFunction はそれぞれが上記で定義されたタイプのいずれかである追加の引数を持つようになります。追加の引数が対応するカスタム関数の引数のデータが格納される読み取り専用構造へのポインタになります。
パラメータ要件
DLL ファイルとの間で受け渡しができる配列とスカラーは常に複素数であり、配列は常に 2 次元です。メンバー ParamName->realParamName->imag を使用して、すべてのスカラー入力値の実部と虚部にアクセスできます。同様に、メンバー Array->hRealArray->hImag を使用して、すべての入力配列の実部と虚部にアクセスできます。配列では最初に列に添字を設定し、次に行に添字を設定します。これは、PTC Mathcad 内の添字の順序 (最初に行、次に列) とは逆です。すべての配列が 2 次元と見なされます。ベクトルを参照するには、最初の配列の添字 (列) を 0 に設定します。例は次のとおりです。
ArrayName->hReal[0][row]、または
ArrayName->hImag[0][row]
戻り値
MyCFunction はエラーがなかったことを示す 0 を返します。エラーを示すには、MyCFunction は返される LRESULT の下位ワードでエラーコードを返し、上位ワードではエラーボックスを配置する引数の番号を返します。上位ワードが 0 の場合、エラーメッセージボックスは関数そのものの下に配置されます。
追加情報
MyCFunction はライブラリから供給される関数名のプレースホルダーです。関数には任意の名前を選択できますが、FUNCTIONINFO 構造の lpfnMyCFunction メンバーを設定することによって PTC Mathcad に実行コードのアドレスを登録する必要があります。
これは役に立ちましたか?