mql5言語の特徴、微妙なニュアンスとテクニック - ページ 48 1...414243444546474849505152535455...247 新しいコメント TheXpert 2017.07.13 12:11 #471 ラシード・ウマロフつまり、 関数 ポインタを 使用する必要があります。 必ずしもそうではありません。オーバーライドされた演算子()を持つクラスもまた、これに最適です。 Alexey Navoykov 2017.07.13 12:34 #472 コンビナート です。 必ずしもそうではありません。オーバーライドされた演算子()を持つクラスもまた、これに最適です。MQLでこの演算子をオーバーロードすることは可能ですか? Alexey Navoykov 2017.07.13 13:00 #473 実際、最も汎用的で柔軟な選択肢は、もちろん関数ポインタである。異なるパラメータでソートできるようにする必要があり、クラスメソッドは1つしかありません。今のところ、MQLにはデリゲートがないので、静的な クラスメソッドへの ポインタがあります。おおよそこのような感じです。struct DrawData { typedef int(*CompareDrawData)(const DrawData& obj1, const DrawData& obj2); static int ComparePrice(const DrawData& obj1, const DrawData& obj2) { return obj1.price > obj2.price ? 1 : obj1.price < obj2.price ? -1 : 0; } static int ComparePercent(const DrawData& obj1, const DrawData& obj2) { return obj1.percent > obj2.percent ? 1 : obj1.percent < obj2.percent ? -1 : 0; } float price; float percent; }; template<typename T1, typename T2> void Sort(T1& array[], T2 comparer) { //....... } void Main() { DrawData items[]; // filling Sort(items, (CompareDrawData)DrawData::ComparePrice); } TheXpert 2017.07.13 14:25 #474 アレクセイ・ナヴォイコフMQLでこの演算子をオーバーロードすることは可能ですか? そんなことはないだろう。 Artyom Trishkin 2017.07.13 17:52 #475 ご回答いただいた皆様、ありがとうございました。試しにやって見ます。 Artyom Trishkin 2017.07.13 18:06 #476 このトピックに関係のないコメントは、「MQL5 MT5 MetaTrader5初心者からの質問」に移動しました。 fxsaber 2017.07.17 19:44 #477 if, else, while, for, doの直後にTABキーを押すと、ちょっとだけ余計な構造が...。 fxsaber 2017.07.17 19:45 #478 ヒストリーデバッグを行う場合、入力パラメータの値はソースからではなく、テスターパラメータータブから取得されます。 削除済み 2017.07.18 03:31 #479 fxsaber: if, else, while, for, doの直後にTABキーを押すと、ちょっとだけ余計な構造が...。 そして、彼らの後だけでなく。OnInit, OnTick,OnCalculate, OnDeinit, classなどの後にも。そして、これらのビルドのためのテンプレートを自分で設定できるようになると、非常にありがたいですね。 fxsaber 2017.07.18 07:42 #480 最適化中は、カスタム基準が選択されていない場合でも、OnTesterは常に実行されます。 1...414243444546474849505152535455...247 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
つまり、 関数 ポインタを 使用する必要があります。
必ずしもそうではありません。オーバーライドされた演算子()を持つクラスもまた、これに最適です。
MQLでこの演算子をオーバーロードすることは可能ですか?
実際、最も汎用的で柔軟な選択肢は、もちろん関数ポインタである。異なるパラメータでソートできるようにする必要があり、クラスメソッドは1つしかありません。今のところ、MQLにはデリゲートがないので、静的な クラスメソッドへの ポインタがあります。おおよそこのような感じです。
MQLでこの演算子をオーバーロードすることは可能ですか?
ご回答いただいた皆様、ありがとうございました。試しにやって見ます。
if, else, while, for, doの直後にTABキーを押すと、ちょっとだけ余計な構造が...。
if, else, while, for, doの直後にTABキーを押すと、ちょっとだけ余計な構造が...。