if (LotStep == 0.01)return(NormalizeDouble(Lot,2));
if (LotStep == 0.1) return(NormalizeDouble(Lot,1));
if (LotStep == 1.0) return(NormalizeDouble(Lot,0));
このような仕組みになっています。
if (LotStep == 0.01)Lot=NormalizeDouble(Lot,2);
if (LotStep == 0.1) Lot=NormalizeDouble(Lot,1);
if (LotStep == 1.0) Lot=NormalizeDouble(Lot,0);
return(Lot);
もしよろしければ、コードを拝見させていただけませんか?いろいろ試したが、うまくいかない。
預金に対するパーセンテージでリスクを加えるのが簡単なのかどうかはわからないが。このコードを例として、私の取引ロボットの収益性を示したいと思います。
各ケースバリアントは、 整数定数、文字定数、定数式でマーク することができる。 定数式には、変数や関数呼び出しを含めることはできません。 switch 文は 整数型でなければ ならない。
エラーなしで動作するコードを提供しました
なぜこのような構文がうまくいかないのかというと、エラーが出るのです - '}' と。- すべてのコントロールパスが値を返すわけではない
エラーなく動作するコードをお渡ししました。
なぜこのような構文がうまくいかないのかというと、エラーが出るのです - '}' と。- すべてのコントロールパスが値を返すわけではない
return(Lot);
この関数は何を返すべきだと思いますか?私が考えるに-。
こうはいかないんです。
このような仕組みになっています。
このように動作しない
右で、うまくいかない。人それぞれですが、私自身は、 return() はどんな関数でも最後に宣言するべきだと考えてきましたし、コンパイラもそれを支持しています。
追記
個人的には、MQL4の頃、Result 変数を使って戻り値を計算するようになりました。関数コードの最後にreturn() を呼ぶことは必須で、コードの最初や途中にあるとbreakの 類似品として認識されることがあることを指摘しておきます(唯一の違いは、break 自体がコンパイラによって関数結果の値を返す命令として認識されないということです)。
double 型の 変数に == 条件を使用するのは正しくありません。このように比較することをお勧めします。