エラー、バグ、質問 - ページ 1575

 
Slawa:
最適化結果 テーブルのあるタブの様子を表示する

例えばこんな感じです(バランス+最大回復係数)。


つまり、1ナノでチャートは死ぬ(それ以上ナノがなくても死ぬ)。

// ところで、この表から、この場合、nanはマイナス残高(初期預金1000000)で取得されることがわかります。

 
Renat Fatkhullin:

一字一句、自分の言葉を自分の根拠で裏打ちしていない時点で

自分のまとめログ(写真ではない)を添付すればいいのに、他人の写真まであげている。

....

コンパイラがコードのバグを指摘したら、それを信じなければならない。

また、信じられない場合は、コンパイルログをフォーラムに投稿して解析してもらうこともできます。そこにもエラーやコンパイル時間が発生します。

OK、以下は約1秒でコンパイルされるビルド1159、約20秒でコンパイルされるビルド1241、そしてコンパイルされないビルド1325です(エラー)。

ファイル:
MQL_1159.txt  7 kb
MQL_1241.txt  7 kb
MQL_1325.txt  8 kb
 
旧ビルドの2600の警告に惑わされることはありません。

しかし、新しいコンパイラで見つかった2000個の警告やバグは、いきなりコンパイラの間違いとなるのでしょうか?

コードの中のこの混乱を整理して、きれいにすることをお勧めします。

本当に、コンパイラがコードに問題があると叫んでいるのに、そのような発言をするのはおかしいです。私たちは、コード品質に対する要求を意図的に高め、デフォルトで問題を隠蔽することは避けたいと考えています。これが金融業界なんです。
 
Renat Fatkhullin:
旧ビルドの2600ワーニングでは混乱しない。

しかし、新しいコンパイラで見つかった2000個の警告やバグは、突然コンパイラが間違ったものになるのでしょうか?

コードの中のこの混乱を整理して、きれいにすることをお勧めします。

本当に、コンパイラがコードに問題があると叫んでいるのに、そのような発言をするのはおかしいです。私たちは、コード品質に対する要求を意図的に高め、デフォルトで問題を隠蔽することは避けたいと考えています。これが金融業界なんです。

警告は警告、バグはエラー、その違いは誰もが知っています。 最後のビルドまではすべてうまくコンパイルされていました。 もし、あなたがコンパイラに新しいルールを入れ込んだら、私のコードが悪いのですか? なぜ、問題を悪い方へ悪い方へと転嫁するのですか?

数値'から'文字列'への暗黙の変換」「'文字列'によるデータ損失の可能性」「エラーメッセージ」などの警告が出るだけです。最新のコンパイラで発生するエラーと何か関係があるのでしょうか?

型なし宣言
関数テンプレートが適用できない
期待値
宣言されていない識別子
'*' - ポインタは使用できません
期待されるクラスタイプ
どのオーバーロードも関数呼び出しに適用することはできません。
期待されるオブジェクトポインタ
期待されるセミコロン

つまり、ここで言語の構文に何らかの変化が現れたことは明らかなのですが、私たちは沈黙しています。 そして、ここで「コードの品質」などというモラルを主張し、いつものように話をそらしているのですね。

 
Alexey Navoykov:

警告は警告、エラーはエラー、その違いは誰もが知っています。 最後のビルドまではすべてうまくコンパイルできていました。 もしあなたが密かに新しいルールをコンパイラに導入し、私たちに知らせなかったとしたら、私のコードが悪いのですか? なぜ問題を悪いほうに転嫁しているのでしょう?

数値'から'文字列'への暗黙の変換」「'文字列'によるデータ損失の可能性」「エラーメッセージ」などの警告が出るだけです。最新のコンパイラが生成するエラーと何の関係があるんだ?

タイプなし
関数テンプレートが適用できない
期待値
宣言されていない識別子
'*' - ポインタは使用できません
期待されるクラスタイプ
どのオーバーロードも関数呼び出しに適用することはできません。
期待されるオブジェクトポインタ
期待されるセミコロン

つまり、ここに言語の構文に何らかの変化が現れたことは明らかなのですが、私たちは沈黙しています。 そして、「コードの品質」などというモラルを私たちに与え、いつものように話をそらしているのですね。

2600個の警告があったとして、その警告がすべて無害であることを保証できるのか、2600個すべてを調べた上で

については、あれだけの警告を受け入れて、それで権利が得られると思うのは、頭の病んだ人しかいないでしょう。

 
Alexey Navoykov:

警告は警告、エラーはエラー、その違いは誰もが知っています。 最後のビルドまではすべてうまくコンパイルできていました。 もしあなたが密かに新しいルールをコンパイラに導入し、私たちに知らせなかったとしたら、私のコードが悪いのですか? なぜ問題を悪いほうに転嫁しているのでしょうか?

数値'から'文字列'への暗黙の変換」「'文字列'によるデータ損失の可能性」「エラーメッセージ」などの警告が出るだけです。最新のコンパイラで発生するエラーと何か関係があるのでしょうか?

型なし宣言
機能テンプレートが適用できない
期待値
宣言されていない識別子
'*' - ポインタは使用できません
期待されるクラスタイプ
どのオーバーロードも関数呼び出しに適用することはできません。
期待されるオブジェクトポインタ
期待されるセミコロン

つまり、ここで言語の構文に何らかの変化が現れたことは明らかなのですが、私たちは沈黙しています。 そして、ここで「コードの品質」などというモラルを主張し、いつものように話をそらしているのですね。

同志よ、君はまだコンパイラに糞を垂れ流すつもりなのか、それともせめてMQLで君の作品を20行ほど提供してくれないかな?あなたのコードにどんな地獄のクソがあるのか知りませんが。それとも、すべてのテレパスがここであなたの話を聞いて、悲しい目をし、このくだらないことに同意するとでも思っているのでしょうか?

エラーの原因となる特定の コードはどこですか?

 
Alexey Navoykov:

警告は警告、エラーはエラー、その違いは誰もが知っています。 最後のビルドまですべてコンパイルされていました。 そして、もしあなたが密かに新しいルールをコンパイラに導入し、我々に知らせなかったとしたら、私のコードは非難されるべきでしょうか? なぜ問題を悪から悪へと転嫁するのでしょう?

口出しはしない。私は26年間、ノンストップでプログラミングを続けてきました。

警告は、金融分野の話であれば、基本的にエラーになります。そして、「符号の消失、精度の 低下、ゴーストに関する損失など」に関する何千もの報告はすべて、コードの品質に対する評決なのです。どうやら、その意味をよく理解していないようですね。

コンパイラがバグと指摘したコードの一部を、合理的な形で完全な形で提供してください。

それがないと、議論全体が見苦しく、不公平に見えてしまうのです。

 

EAのログブックにエラーを発見しました。

不明コマンド E0

どういう意味ですか?

 

レナト・ファットフーリン

MQL5で名前空間の仕組みを導入してください。宣言の中で同一の名前を無効にするためにマクロの形で松葉杖を置くのはあまりエレガントには見えませんから。)

 
Renat Fatkhullin:

...

警告は、金融分野の話であれば、基本的にエラーになります。そして、「符号の消失、精度の 低下、ゴーストに関する損失など」に関する何千もの報告はすべて、コードの品質に対する評決です。どうやら、その意味をよく理解していないようですね。

...
付け加えると、あるレベルの複雑なプロジェクトになると、警告は一般的なコンパイル時のエラーよりもはるかにひどい結果を引き起こします。警告の厄介なところは、プログラムは警告と一緒に動作しますが、異なる状況下では、修正するのが非常に困難な奇跡を引き起こすことです。