break contimue 繰り返しの処理の中断 | メタトレーダー4でプログラムを作ってみよう

メタトレーダー4でプログラムを作ってみよう

無料のトレードソフトであるメタトレーダー4のプログラムを作るコツをアップします。初心者がインジケーターとEAのプログラムを作成できるのを目指します。

break と contimue はどちらも繰り返しの処理を中断するために使用しますが、

それぞれ役割が違います。


break は繰り返し処理をすべてやめてしまいますが、

continue はそれ以下の繰り返しの処理を1回飛ばします。

なんだかわかりにくいですね~^^;

for(int i=0;i<3;i++)

    処理1
    if(条件1) break;
    if(条件2) continue;
    処理2

処理3



このようなプログラムがあった時、

条件1 と 条件2 を満たさなければ i が 5 になるまで、

処理1 と 処理2 が繰り返されます。


i=0
処理1
処理2

i=1
処理1
処理2

i=2
処理1
処理2

処理3



最初は i=0 で } まで行くと 

i++ で i に 1 が足されます。

i<3 の条件を満たしている間は、これが繰り返されます。

i=2 の状態で } まで行くと 

i++ で i に 1 が足され3になり、

i<3 の条件を満たさなくなるので繰り返しの処理を終了し、

処理3が実行されます。


途中で、条件1を満たして break が実行されると、

for文の処理そのものが終了します。


例えば、i=1 で条件1を満たしたとすると、

i=0
処理1
処理2

i=1
処理1

処理3


という流れになります。


continue
 の場合は、それ以下の処理を飛ばします。

例えば、i=1 で条件2を満たしたとすると、

i=0
処理1
処理2

i=1
処理1

i=2
処理1
処理2

処理3

という流れになります。

i=1 の時の、continue 以下の処理2が無視されます。


このように、使い方が異なりますので注意して使用してください。