グローバル変数を条件付きで設定 GlobalVariableSetOnCondition 関数

関数

グローバル変数関数

GlobalVariableSetOnCondition 関数

この関数は、指定した現在のクライアントターミナルのグローバル変数の値と3番目の引数が等しい場合、そのグローバル変数に新しい値を設定して trueを取得します。グローバル変数が無い場合は、エラー「ERR_GLOBALVARIABLE_NOT_FOUND (4501)」となり falseを取得します。
(プログラム内で宣言するグローバル変数との違いはこちらを参考にしてください)

この関数は、クライアントターミナルのグローバル変数へ、他の MQL4プログラムに割り込ませないようにするためなどに使われます。

データ型と構成・戻り値

bool GlobalVariableSetOnCondition(①, ②, ③);

戻り値は、処理が成功した場合は true、それ以外は falseが返されます。グローバル変数の現在値が引数③と異なる場合も falseとなります。

発生するエラーについては、GetLastError関数で取得することができます。

引数 [3]

GlobalVariableSetOnCondition関数は 3個の引数で構成されます。


引数名データ型単位初期値説明
namestringクライアントターミナルのグローバル変数名。
valuedouble設定する新しい数値。
check_valuedoubleグローバル変数の現在値を確認する値。

使用例

GlobalVariableSetOnCondition関数によるグローバル変数の条件付き設定

GlobalVariableSetOnCondition関数を使って条件付きでクライアントターミナルのグローバル変数を変更します。

グローバル変数「gvar1」の値が「123.456」の時、値を「100」に変更します。

現在設定しているグローバル変数のリストは次のとおりです。

設定方法は、こちらを参考にしてください。(クライアントターミナルのグローバル変数は、GlobalVariableSet関数からでも設定ができます)

コード

// GlobalVariableSetOnCondition関数によるグローバル変数の条件付き設定
#property strict
void OnInit() {

bool tf = GlobalVariableSetOnCondition("gvar1", 100, 123.456);

Print("グローバル変数の設定の成否:", tf);
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果

タイトルとURLをコピーしました