記事"クロスプラットフォームEA:MQL5標準ライブラリからコンポーネントの再利用"についてのディスカッション

 

新しい記事 クロスプラットフォームEA:MQL5標準ライブラリからコンポーネントの再利用 はパブリッシュされました:

クロスプラットフォームEAはMQL4に有用であり、MQL5標準ライブラリ内に一部コンポーネントが存在します。 この記事では、MQL4コンパイラと互換性のあるMQL5標準ライブラリの特定コンポーネントを作るメソッドを取り扱います。


最初記事で 説明したのと同様に、理想的には、MQL4とMQL5バージョン間のコードに類似点がある共通ヘッダーファイルを使用します。単一ファイルに共有できるよ うに、3つの別々ファイルにCSymbolInfoを書き換えることで、他2つのクラスファイルにコード化されます。しかし、この記事では、簡単(かつ迅 速)なアプローチを扱います:CSymbolInfoでMQL5シンボルをコピーし、MQL4と互換性ない行をコメントにします。結果ファイル構造は、以 下ようになります。

ファイル構造内シンボル

作者: Enrico Lambino

 

こんにちは!

あなたは冒頭でこう書いている:「しかし、その主な欠点は 、多くのコードを書き直す必要がないことです。

それは「...利点 ...」という意味ですよね?- という意味ですよね?

 
こんにちは、
とても素晴らしい仕事と分かりやすい説明。私は連絡を取り合うつもりです。ありがとう!
 

なぜSymbolInfoのようなラッパークラスを使いたがるのか理解できない。

有用な関数は1つしかない:

double CSymbolInfo::NormalizePrice(const double price) const

残りはすべて、コードを遅くするためのオーバーロードでしかない。うまくコード化されたSymbolクラスは役に立つかもしれないが、この「標準的な」クラスは役に立たない。CAccountInfo "については話したくもない。

エンリコ・ランビーノ@Enrico Lambinoは、なぜ代わりに自分のクラスを作らなかったのですか?