GetLastError関数の役割・働き
GetLastError関数は、プログラムが最後に遭遇したエラーのコードを取得するために使用されます。MQL5でプログラミングしている際に、何らかの操作が失敗した場合、GetLastError関数を呼び出してエラーコードを取得し、問題の原因を特定するのに役立てることができます。
GetLastError関数が取得する内容は具体的には、MQL5の定義済み変数である_LastErrorに含まれた内容を戻り値として返す仕様になっています。
※定義済み変数全般については↓の記事をご参照ください
定義済み変数である_LastErrorについて
_LastErrorはプログラムが最後に遭遇したエラーのコードを格納する定義済み変数です。
従って、プログラムが最後に遭遇したエラーのコードを取得したい場合、_LastErrorを使っても良いし、GetLastError関数を使っても良い、という事になります。
※具体的なリターンコードはMQL5公式リファレンス内にある取引サーバのリターンコードから確認ができます。
_LastErrorが格納したエラーデータはResetLastError関数を使ってその値をゼロにリセットする事ができます。
ResetLastError関数について
ResetLastError関数は定義済み変数である_LastErrorの値をゼロにリセットする働きをする関数です。
void ResetLastError();
GetLastError関数の引数について
GetLastError関数は引数を取りません。単純にこの関数を呼び出すと、最後に発生したエラーのコードを返します。
GetLastError関数の戻り値について
GetLastError関数の戻り値は整数型(int
)です。エラーコードが0の場合は、エラーが発生していないことを意味します。それ以外の場合は、具体的なエラーのリターンコードが返され、それを基にエラーの原因を特定できます。
※具体的なリターンコードや低数値はMQL5公式リファレンス内にある取引サーバのリターンコードから確認ができます。
GetLastError関数を使う際の注意点
GetLastError関数は_LastErrorの値をゼロにリセットする機能を持っていません。
従って、エラーチェック用にGetLastError関数を呼び出す前に、ResetLastError関数を使ってエラー情報をクリアする事が推奨されます。