インジケーターなどプログラムで「関数」について
分からない人向けです。
関数とは
ある処理をする機能のことです。
入力データ(引数といいます)と出力(戻り値といいます)があります。
MQLに用意されてる関数もあるし、自分で関数を作ることもできます。
関数がどんなものかは、例を見た方が早く理解できると思います。
例:MQLに標準で用意されてる関数を使う例。
現在日時を取得する関数TimeCurrent()を使う場合です。
1行目は、日時を扱うデータ型で「dt」という変数を用意します。
2行目は、MQLに標準で用意されてる関数のTimeCurrent()で、「dt」に現在日時をセットできます。
TimeCurrent()は、現在日時のデータを取得できる機能があるのです。
datetime dt; // ← 「datetime 」型の「dt」という変数を用意 dt = TimeCurrent(); // ← 現在日時をセット
例:足し算する関数を自作(自分で関数を作る)
整数型の「a」「b」を入力データとして、「a」と「b」を足し算して結果を返す機能の関数です。関数の名前を「tashizan」と自分で決められます。ただし、すでに存在する関数と同じ名前にはできません。
int tashizan(int a, int b) // tashizanという関数名 { // 整数の変数 a と b の入力 // 処理結果(出力)を int型で戻す int kekka; kekka = a + b; // a とb を足し算する return kekka; // 足し算の結果値を戻す(出力) }
例:上記の自作の足し算関数の使い方
1行目で、整数のデータ型の「n」という変数を用意。
2行目で、自作の足し算関数に2,5を引数(入力データ)にして、足し算の結果が「n」にセットされます。この場合「n」には2+5の7がセットされます。
int n; n = tashizan(2, 5); // 2+5の結果が n にセットされる
コメント