mql5におけるOOP、テンプレート、マクロ、微妙な使い分け - ページ 25 1...1819202122232425262728 新しいコメント fxsaber 2020.02.26 16:54 #241 TheXpert: 指定子はオブジェクト全体ではなく、参照を参照しています。 おそらく、そうであれば、ここでお叱りを受けることはないでしょう。 void g1( A& ) {} void g2( const A& ) {} void OnStart() { const A a; g1(a); // 'a' - constant variable cannot be passed as reference g2(a); // OK } TheXpert 2020.02.26 17:05 #242 fxsaber: おそらく、そうであれば、ここで悪口を言うことはないでしょう。 これは定数オブジェクトであり、定数オブジェクトは 定数でない参照を持つことができないのは論理的なことである fxsaber 2020.02.26 17:44 #243 TheXpert: これは定数オブジェクトなので、定数でないオブジェクト は定数でない参照を持つことができないのは論理的な話です。 定数オブジェクトを 参照するにはどうしたらよいですか? Vladimir Simakov 2020.02.26 18:06 #244 fxsaber: 定数オブジェクトを 参照するにはどうしたらよいですか? void g1( A& ) {} void g1(const A& ){} void g2( const A& ) {} void OnStart() { const A a; g1(a); g2(a); } オーバーロードを追加する。 fxsaber 2020.02.26 18:56 #245 Vladimir Simakov: 追加するオーバーロード。 常時リンクでこのような過負荷はないのでしょうか? トレーディング、自動売買システム、ストラテジーテストに関するフォーラム mql5でのOOP、テンプレート、マクロ、ヒントとトリック TheXpert さん 2020.02.26 15:24 指定子は参照を参照し、オブジェクト全体を参照するものではない Vladimir Simakov 2020.02.26 19:00 #246 fxsaber: そのようなオーバーロードは、常に参照するものではないのでしょうか? どうしたいですか? Vladimir Simakov 2020.02.26 19:10 #247 fxsaber: そのような過負荷は、定数参照では過負荷にならないのでは? なぜなら、そこではすべてが合法だからです。参照によってオブジェクトのインスタンスを変更するのではなく、メソッドが呼び出されたオブジェクトのインスタンスを変更するのです。 クラスなら、この仕掛けができる(構造物なら、できない)。 class A { int i; public: void f( const A &Value ) { Print(Value.i); // 0 if (&this!=&Value) this.i = Value.i + 1; Print(Value.i); // 1 } }; void OnStart() { A a; a.f(a); } fxsaber 2020.02.26 19:27 #248 Vladimir Simakov: もしあなたがコンパイラに最初の例をクラッシュさせたいのなら、それは無理でしょう。 合法性の問題ではなく、const修飾子はオブジェクトが変化しないことを保証するものではない、ということです。 fxsaber 2020.02.27 08:54 #249 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム mql5でのOOP、テンプレート、マクロ、ヒントとトリック fxsaber, 2020.02.25 22:23 この式がfalseを返すのを見たことがない。 ORDER_TIME_DONE_MSC == DEAL_TIME_MSC そのため、取引履歴に基づく注文執行時間の統計が取りにくいのです。 成行注文の場合はまだORDER_TIME_SETUP_MSCの 値を比較できるとしても、保留注文の場合は意味がないのです。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム ライブラリ:MT4Orders fxsaber, 2020.02.27 09:40 0 - 348806: 00:01:57.311 1 - 348530: 00:01:39.027 2 - 348494: 00:01:15.259 3 - 348406: 00:01:07.671 4 - 348950: 00:01:04.869 5 - 348960: 00:01:02.888 6 - 348814: 00:01:00.654 7 - 348392: 00:01:00.642 8 - 348508: 00:00:54.515 9 - 348550: 00:00:54.467 実行中のアカウントで最大2分間の実行が可能です。あなたの統計情報をここで共有しましょう。このスクリプトは、ライブラリを使用しないので、Netting/Hedgingに適しています。 削除済み 2020.02.27 13:24 #250 という疑問が湧いてきました。 New Bar」クラスと「Data Manager」クラスを使用する「Program」クラスがあります。New Bar "クラスは、"Data Manager "クラスも使用しています。パブリックゲッターとセッターは "Data Manager "クラスで実装されています。 class CDataManager { private: string m_symbol; ENUM_TIMEFRAMES m_timeframe; public: //--- Геттеры и сеттеры }; class CNewBar { private: CDataManager m_data; }; class СProgram { private: CNewBar m_newBar; CDataManager m_data; }; 質問:「New Bar」クラスのプログラムの初期化で、「Data Manager」クラスの「symbol」「timeframe」プロパティを指定する際のオプションは何でしょうか?New Barクラスで、データマネージャフィールドにアクセスするためのパブリックゲッターとセッターを持ちたくは ありません。そして、データマネージャーを非公開にしたいと思います。 言い換えれば、アプリケーションは、データマネージャーを使用する複数のクラスを使用することができます。プログラムの初期化時に、すべてのクラスのすべてのマネージャフィールドを必要な値で初期化する必要があります。しかし、データマネージャーフィールドにアクセスするために、すべてのクラスでゲッターを作りたくはないのです。それで... 1...1819202122232425262728 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
指定子はオブジェクト全体ではなく、参照を参照しています。
おそらく、そうであれば、ここでお叱りを受けることはないでしょう。
おそらく、そうであれば、ここで悪口を言うことはないでしょう。
これは定数オブジェクトであり、定数オブジェクトは 定数でない参照を持つことができないのは論理的なことである
これは定数オブジェクトなので、定数でないオブジェクト は定数でない参照を持つことができないのは論理的な話です。
定数オブジェクトを 参照するにはどうしたらよいですか?
定数オブジェクトを 参照するにはどうしたらよいですか?
オーバーロードを追加する。
追加するオーバーロード。
常時リンクでこのような過負荷はないのでしょうか?
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
mql5でのOOP、テンプレート、マクロ、ヒントとトリック
TheXpert さん 2020.02.26 15:24
指定子は参照を参照し、オブジェクト全体を参照するものではない
そのようなオーバーロードは、常に参照するものではないのでしょうか?
どうしたいですか?
そのような過負荷は、定数参照では過負荷にならないのでは?
なぜなら、そこではすべてが合法だからです。参照によってオブジェクトのインスタンスを変更するのではなく、メソッドが呼び出されたオブジェクトのインスタンスを変更するのです。
クラスなら、この仕掛けができる(構造物なら、できない)。
もしあなたがコンパイラに最初の例をクラッシュさせたいのなら、それは無理でしょう。
合法性の問題ではなく、const修飾子はオブジェクトが変化しないことを保証するものではない、ということです。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
mql5でのOOP、テンプレート、マクロ、ヒントとトリック
fxsaber, 2020.02.25 22:23
この式がfalseを返すのを見たことがない。そのため、取引履歴に基づく注文執行時間の統計が取りにくいのです。
成行注文の場合はまだORDER_TIME_SETUP_MSCの 値を比較できるとしても、保留注文の場合は意味がないのです。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
ライブラリ:MT4Orders
fxsaber, 2020.02.27 09:40
実行中のアカウントで最大2分間の実行が可能です。あなたの統計情報をここで共有しましょう。このスクリプトは、ライブラリを使用しないので、Netting/Hedgingに適しています。
という疑問が湧いてきました。
New Bar」クラスと「Data Manager」クラスを使用する「Program」クラスがあります。New Bar "クラスは、"Data Manager "クラスも使用しています。パブリックゲッターとセッターは "Data Manager "クラスで実装されています。
質問:「New Bar」クラスのプログラムの初期化で、「Data Manager」クラスの「symbol」「timeframe」プロパティを指定する際のオプションは何でしょうか?New Barクラスで、データマネージャフィールドにアクセスするためのパブリックゲッターとセッターを持ちたくは ありません。そして、データマネージャーを非公開にしたいと思います。
言い換えれば、アプリケーションは、データマネージャーを使用する複数のクラスを使用することができます。プログラムの初期化時に、すべてのクラスのすべてのマネージャフィールドを必要な値で初期化する必要があります。しかし、データマネージャーフィールドにアクセスするために、すべてのクラスでゲッターを作りたくはないのです。それで...