// for libsample#import "libsample.ex5"
IMPORT_EA_INTERFACE // здесь список импортируемых функций. они по идее одинаковые, поэтому можно в отдельный дефайн#import
DECLARE_AND_REGISTER(libsample) // здесь генерация класса-обертки для libsample который обернет импортированные функции и зарегистрируется в менеджере
しかし、異なるライブラリに対応した実装もできていないんです。このようなマクロを持つ複数のライブラリを1行で接続し、すべてのライブラリでOnTickを呼び出すこと。
何を手に入れたいのか、例題すらよくわからない。見せてもらえますか?
ZZZ マネージャーについては、ご覧のとおりです。EventBase.mqhはこちら。愚かにも全員を相続人にし、新しいオブジェクトが現れると、そのポインタは共通のリストに移動し、Onイベントごとにforループで呼び出されるようにしました。
欲しいものの見本も手に入らない。見せてもらえますか?
MyClass_1.mqh:
MyClass_2.mqh:
Expert.mq5。
実行結果として3つのプリンターをすべて取得する場合:"Init 1"、"Init 2"、"Init EA"
皆さん、こんにちは。
エキスパートからIndicatorParameters 関数を呼び出すと、エラー4014が発生します。それは何でしょうか?1960年製造。
このようなマクロで複数のライブラリを1行で接続し、OnTickを呼び出すことで全てのライブラリのOnTickを呼び出せるようにする。
ライブラリ名(class##libname)でクラスを形成し、ラッパー内の呼び出しにコンテキストを使用するインポート 周りのマクロラッパーを作成する(libname::oninit)。
で、そのクラスは上記のマネージャにダンプされます。
が、それぞれのリブには別の行が必要です。
ライブラリ名でクラスを形成するimportのマクロラッパーを作る(class##libname)
これは私にはちょっと難しいので、ググってみます。
皆さん、こんにちは。
エキスパートからIndicatorParameters 関数を呼び出すと、エラー4014が発生します。それは何でしょうか?1960年製造。
あなたは3 inludniksを持っている場合は、私のコードが動作するはずですが、各クラスのマクロ置換を処方する必要があり、ここで私の例です、それは動作するように見えるが、私はまだチェックします。
Expert Advisor のコードでは、1つの #include <fileMyclass.mqh> をインクルードするだけです。
この例では、3つのファイルすべてを、私のマクロ置換で(コードの一番下に)閉じなければなりません(そして、m_class2 , m_class3... の名前を置換してください)。
CObjectを継承し、クラスマネージャにマクロを追加することで、追加された全てのインスタンスをCArrayObjに格納し、それをループして必要なOnXXX関数を呼び出すというものです。
私も異なるライブラリに対応した実装はできていません。このようなマクロを持つ複数のライブラリを1行で接続し、すべてのライブラリのOnTickを呼び出すこと。
の例が必要ですが、方法がわからず、"クラスマネージャでのマクロ置換 "ではうまくいきませんでした。
実行結果として「Init 1」「Init 2」「Init EA」の3つのプリンターを全て取得する場合
マネージャーをやってください。上記のソースコードの例で示した。マクロは別のことに使うんですけどね。
私にはちょっと複雑なので、ググってみました。
きれいな形にはなりませんが、こんな風に切り取ることができるんです。
ここでは、マネージャーを使用しない直接の呼び出しと実装例を紹介します。
ImportFrom クラスにマネージャ登録と非静的関数があれば、インポートされたすべての関数に対して自動的に呼び出すことができます。
ここでは、マネージャーを使用しない直接の呼び出しと実装例を紹介します。
ImportFrom クラスにマネージャ登録と非静的関数があれば、インポートされたすべての関数に対して自動的に呼び出すことができます。
アイデアを得た、ありがとう。
100%透明というわけではありませんが、現時点よりはマシです。