ライブラリ: Price_Compare - ページ 4 1234 新しいコメント fxsaber 2018.10.01 08:19 #31 Koldun Zloy: 言ってみよう。マクロの役割とはいったい何なのか?void OnTick() // フレーミング。 { Print("Hello World!"); ::OnTick2(); } #define OnTick OnTick2 void OnTick() {} // オリジナル 削除済み 2018.10.02 17:28 #32 すべてはごまかしだ。関数に必要なコードを挿入するのはそれほど難しいことではない。 実際、あなたはライブラリのユーザーから、関数にコードが追加されていることを隠しているのだ。 他人のプログラムでこのようなトリックに対処しなければならなくなったら、作者を呪うことになるだろう。 そして、ライブラリのマクロの間違った使い方の例です: #define CHECK_INIT_SYNC if (INIT_SYNC::Check()) return void OnTimer( void ) { CHECK_INIT_SYNC; ::OldOnTimer(); } このマクロは、この場所に関数の出口があることを隠します。なぜそんなものが必要なのか?文字数を節約するため?それは本気ではない。 マクロは、条件付きコンパイルや型宣言に使うことができる(通常のtypedefはまだない)。 マクロを使って定数を宣言しなければならないこともある。 それ以外の場合、マクロはコードを混乱させるだけだ。 https://www.mql5.com/ru/forum/170952/page50#comment_5488178。 Особенности языка mql5, тонкости и приёмы работы 2017.07.20www.mql5.com В данной теме будут обсуждаться недокументированные приёмы работы с языком mql5, примеры решения тех, или иных задач... fxsaber 2018.10.02 17:53 #33 Koldun Zloy:すべてはごまかしだ。必要なコードを関数に挿入するのはそれほど難しいことではない。実際には、ライブラリのユーザーから、関数にコードが追加されていることを隠しているのだ。他人のプログラムでこのようなトリックに対処しなければならなくなったら、作者を呪うことになるだろう。 問題は、この解決策の利便性と需要である。この場合、1行でインジケータに同期性を与えたり取り除いたりすることができる。おそらく、あなたが不便だと感じているのでしょう。 そして、あなたのライブラリにおけるマクロの間違った使用例です: このマクロは、この場所で関数から抜けることができることを隠している。なぜそんなものが必要なのか?文字数を節約するため?そんなの本気じゃない。 そうやって文脈から外すのは良くない。マクロはすべてのOn関数で使われる。 条件付きコンパイルや型宣言にマクロを使うことは許されている(通常のtypedefはまだない)。 マクロを使って定数を宣言する必要がある場合もある。 それ以外の場合、マクロはコードを混乱させるだけである。 https://www.mql5.com/ru/forum/170952/page50#comment_5488178。 これはどうしたことだろう? #define Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK) OrdersTotal()を置き換える必要があるとしたら? 削除済み 2018.10.02 18:07 #34 そのように文脈を無視して取り上げるのは良くない。マクロはすべてのオン機能で使われている。 私はそれらすべてを見てきた。どの関数でも何の役にも立たない。 これのどこが悪いんだ? #define Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)これも混乱させるだけだ。 OrdersTotal() を置き換える必要があるとしたら? OrdersTotal()を 置き換える必要はない。 fxsaber 2018.10.02 18:23 #35 Koldun Zloy: 私はそれらすべてを見てきた。これらすべての機能において、それは何の役にも立たない。混乱させるだけだ。OrdersTotal()を 置き換える必要はありません。聞いた。他の人が掲載されているライブラリを使うのがどれだけ便利で、どれだけの人がそのライブラリのユーザーなのかは知らない。 だから人のことは言えない。おそらく、いつか私はマクロに対して違う態度をとるようになるだろう。今は、あなたの意見には同意できない。 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
言ってみよう。マクロの役割とはいったい何なのか?
すべてはごまかしだ。関数に必要なコードを挿入するのはそれほど難しいことではない。
実際、あなたはライブラリのユーザーから、関数にコードが追加されていることを隠しているのだ。
他人のプログラムでこのようなトリックに対処しなければならなくなったら、作者を呪うことになるだろう。
そして、ライブラリのマクロの間違った使い方の例です:
このマクロは、この場所に関数の出口があることを隠します。
なぜそんなものが必要なのか?文字数を節約するため?それは本気ではない。
マクロは、条件付きコンパイルや型宣言に使うことができる(通常のtypedefはまだない)。
マクロを使って定数を宣言しなければならないこともある。
それ以外の場合、マクロはコードを混乱させるだけだ。
https://www.mql5.com/ru/forum/170952/page50#comment_5488178。
すべてはごまかしだ。必要なコードを関数に挿入するのはそれほど難しいことではない。
実際には、ライブラリのユーザーから、関数にコードが追加されていることを隠しているのだ。
他人のプログラムでこのようなトリックに対処しなければならなくなったら、作者を呪うことになるだろう。
問題は、この解決策の利便性と需要である。この場合、1行でインジケータに同期性を与えたり取り除いたりすることができる。おそらく、あなたが不便だと感じているのでしょう。
そして、あなたのライブラリにおけるマクロの間違った使用例です:
このマクロは、この場所で関数から抜けることができることを隠している。
なぜそんなものが必要なのか?文字数を節約するため?そんなの本気じゃない。
そうやって文脈から外すのは良くない。マクロはすべてのOn関数で使われる。
条件付きコンパイルや型宣言にマクロを使うことは許されている(通常のtypedefはまだない)。
マクロを使って定数を宣言する必要がある場合もある。
それ以外の場合、マクロはコードを混乱させるだけである。
https://www.mql5.com/ru/forum/170952/page50#comment_5488178。
これはどうしたことだろう?
OrdersTotal()を置き換える必要があるとしたら?
そのように文脈を無視して取り上げるのは良くない。マクロはすべてのオン機能で使われている。
私はそれらすべてを見てきた。どの関数でも何の役にも立たない。
これのどこが悪いんだ?
これも混乱させるだけだ。
OrdersTotal() を置き換える必要があるとしたら?
OrdersTotal()を 置き換える必要はない。
私はそれらすべてを見てきた。これらすべての機能において、それは何の役にも立たない。
混乱させるだけだ。
OrdersTotal()を 置き換える必要はありません。
聞いた。他の人が掲載されているライブラリを使うのがどれだけ便利で、どれだけの人がそのライブラリのユーザーなのかは知らない。
だから人のことは言えない。おそらく、いつか私はマクロに対して違う態度をとるようになるだろう。今は、あなたの意見には同意できない。