テンプレート・パラメータ = void* のコンパイラ・バグ - ページ 8 123456789101112131415...20 新しいコメント fxsaber 2018.12.20 10:07 #71 A100:もし私が正しく述べていないのであれば、訂正してください。不正確です。括弧を使うことで、間違いが起こりにくくなります。 警告とは、このように書くと比較的多くのコーダーが間違いを犯す、つまり結果が意図したものと違うというメッセージである。これは、ブラケットだけでなく、すべての警告に適用されます。 A100 2018.12.20 10:14 #72 fxsaber:間違っている。括弧を使うことで、間違いが少なく なります。 警告とは、このような書き方をすると、比較的多くのコーダーが間違いを犯しますよ、つまり、結果が意図したものと違いますよ、というメッセージです。これは、ブラケットだけでなく、すべての警告に適用されます。これは概念ではなく、一般的な推論です。 この問題は実用的な性格のもので、抽象的な性格のものではなく、非常に具体的なものです。どこもかしこも?それとも選択的に?では、その選定は誰が決めるのでしょうか。fxsaberは? それを一義的に定式化できるのか?このコンセプトをコンパイラに実装できるように 私は、「なくても困らないところだけ」と表現 しました。 Ilya Malev 2018.12.20 10:14 #73 pavlick_:ZS: でも、もし作るなら、標準のプラスライブラリとなるべく似せる(名前、動作など)ので、私には選択の余地はないですね。すでにすべてが書かれているのに、なぜ別の仕様書を作るのか?そうすると、オブジェクト配列やポインタ配列は、mqlでは全く必要ないことになります。ダイナミックリストとfor eachループは、トレーディングにおける99%のタスクを最もコンパクトで便利な方法で解決することができます。別にリストクラスも必要ない。これらのプラスアルファの機能は、普段のここよりも大きなスケールで必要なものばかり...。 TheXpert 2018.12.20 10:19 #74 A100: 一義的に表現できるか? コードを理解しやすくするところ A100 2018.12.20 10:21 #75 TheXpert:コードを理解しやすくするところそのコンセプトをコンパイラに実装できるように。不要なブラケットを禁止する人はいない。質問は、不要な警告についてです fxsaber 2018.12.20 10:21 #76 A100:それは、抽象的なものではなく、「どこにブラケットが必要なのか」という具体的な問題なのです。どこもかしこも?それとも選択的に?では、その選定は誰が決めるのでしょうか。fxsaberは? それを明確に表現できますか?問題は、MT4のコンパイラが正しいかどうかでした トレーディング、自動売買システム、ストラテジーテストに関するフォーラム MetaTrader 5 build 1930プラットフォームの新バージョン:MQL5におけるフローティング・チャート・ウィンドウと.Netライブラリ fxsaber さん 2018.12.11 19:44#property strict // from MT5: Canvas.mqh uint Pixel = (r<<16|g<<8|b<<0|255<<24) &0xffffffff; //check operator precedence for possible error; use parentheses to clarify precedence この場合は右です。括弧はここでは必要ありませんが、エラーが発生する可能性があるため、望ましいです。コンパイラは、このような確率をもとに、何らかの警告を発する。そのために発明されたのです。 A100 2018.12.20 10:24 #77 fxsaber:この場合、彼の言うとおりです。具体的な事例はこの段階では必要ありません(いくつ出してもかまいません)。必要なのは、コンパイラで実装可能な単一の コンセプト(括弧がない場合に警告を発するべき場合)である。 fxsaber 2018.12.20 10:26 #78 A100:この段階では具体的な例は必要ありません(いくつ出してもかまいません)。必要なのは、コンパイラに実装できる概念であるすでにかなり実装されていますね。ただ、MT4の方がスマートであることが判明したのです。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム MetaTrader 5 build 1930の新バージョン:MQL5におけるフローティングチャートウィンドウと.Netライブラリ fxsaber さん 2018.12.11 20:22 これらは、決して冗長なメッセージではありません。常に優先順位があります。 bool a = r && g || b; // check operator precedence for possible error; use parentheses to clarify precedence コンパイラはすでにファイブにもエラーの可能性があることを警告しています。 A100 2018.12.20 10:36 #79 fxsaber:すでにかなり実装されていますね。ただ、MT4の方がスマートであることが判明したのです。 この警告は、MQL5では優先順位が異なるため、このように表示されただけです。からではなく つまり、「今までMQL4が違っていたところでは、警告が必要だろう」というコンセプト です。こうして、開発者はこれまでの失敗を修正した。其れっ切り Ilya Malev 2018.12.20 10:38 #80 コンパイラが、不完全な数式を書いたときにExcelが行うように、自動的に括弧を「正しく」並べる機能を提供してくれれば、より便利なのだが。 123456789101112131415...20 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
もし私が正しく述べていないのであれば、訂正してください。
不正確です。括弧を使うことで、間違いが起こりにくくなります。
警告とは、このように書くと比較的多くのコーダーが間違いを犯す、つまり結果が意図したものと違うというメッセージである。これは、ブラケットだけでなく、すべての警告に適用されます。
間違っている。括弧を使うことで、間違いが少なく なります。
警告とは、このような書き方をすると、比較的多くのコーダーが間違いを犯しますよ、つまり、結果が意図したものと違いますよ、というメッセージです。これは、ブラケットだけでなく、すべての警告に適用されます。
これは概念ではなく、一般的な推論です。
この問題は実用的な性格のもので、抽象的な性格のものではなく、非常に具体的なものです。どこもかしこも?それとも選択的に?では、その選定は誰が決めるのでしょうか。fxsaberは? それを一義的に定式化できるのか?このコンセプトをコンパイラに実装できるように
私は、「なくても困らないところだけ」と表現 しました。
ZS: でも、もし作るなら、標準のプラスライブラリとなるべく似せる(名前、動作など)ので、私には選択の余地はないですね。すでにすべてが書かれているのに、なぜ別の仕様書を作るのか?
そうすると、オブジェクト配列やポインタ配列は、mqlでは全く必要ないことになります。ダイナミックリストとfor eachループは、トレーディングにおける99%のタスクを最もコンパクトで便利な方法で解決することができます。別にリストクラスも必要ない。これらのプラスアルファの機能は、普段のここよりも大きなスケールで必要なものばかり...。
コードを理解しやすくするところ
コードを理解しやすくするところ
そのコンセプトをコンパイラに実装できるように。不要なブラケットを禁止する人はいない。質問は、不要な警告についてです
それは、抽象的なものではなく、「どこにブラケットが必要なのか」という具体的な問題なのです。どこもかしこも?それとも選択的に?では、その選定は誰が決めるのでしょうか。fxsaberは? それを明確に表現できますか?
問題は、MT4のコンパイラが正しいかどうかでした
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
MetaTrader 5 build 1930プラットフォームの新バージョン:MQL5におけるフローティング・チャート・ウィンドウと.Netライブラリ
fxsaber さん 2018.12.11 19:44
この場合は右です。括弧はここでは必要ありませんが、エラーが発生する可能性があるため、望ましいです。コンパイラは、このような確率をもとに、何らかの警告を発する。そのために発明されたのです。
この場合、彼の言うとおりです。
具体的な事例はこの段階では必要ありません(いくつ出してもかまいません)。必要なのは、コンパイラで実装可能な単一の コンセプト(括弧がない場合に警告を発するべき場合)である。
この段階では具体的な例は必要ありません(いくつ出してもかまいません)。必要なのは、コンパイラに実装できる概念である
すでにかなり実装されていますね。ただ、MT4の方がスマートであることが判明したのです。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
MetaTrader 5 build 1930の新バージョン:MQL5におけるフローティングチャートウィンドウと.Netライブラリ
fxsaber さん 2018.12.11 20:22
これらは、決して冗長なメッセージではありません。常に優先順位があります。
コンパイラはすでにファイブにもエラーの可能性があることを警告しています。
すでにかなり実装されていますね。ただ、MT4の方がスマートであることが判明したのです。
この警告は、MQL5では優先順位が異なるため、このように表示されただけです。からではなく
つまり、「今までMQL4が違っていたところでは、警告が必要だろう」というコンセプト です。こうして、開発者はこれまでの失敗を修正した。其れっ切り