サービスを提供します。もう稼働しているのでしょうか? - ページ 15

 
Igor Makanu:

HH:C#にコピーせずに price[]を渡す方法がわからないのですが、何か方法はありますか?

ArraySwap です。

 
fxsaber:

ArraySwapです。

残念ながら、うまくいきませんでした。コンパイラはまだ const ( 'price' - constant variable cannot be passed as reference Momentum_DLL.mq5 57 17 ) をトレースしています。

C# oncalculateの2つの計算関数は、1つは配列の価格を参照(ref)で渡す必要があり、2つ目はパラメータとして配列を渡すだけ(refなし)ですが、私はコピーせずに勝つことができませんでした - 私はMQLコメントで関数の署名を書きました


ファイル:
 
Igor Makanu:

残念ながら、うまくいきませんでした。コンパイラはまだ const ( 'price' - constant variable cannot be passed as reference Momentum_DLL.mq5 57 17 ) をトレースしています。

C# oncalculateの2つの計算関数があります。1つは価格配列を参照(ref)で渡し、もう1つは配列をパラメータとして渡す(refなし)だけです。

MEはサインに便秘を示さない。


 
fxsaber:

MEは、署名にconstがないことを示す。


そうなんです、シグネチャにconstを書くことを禁止 するのがC#の機能なんです

http://qaru.site/questions/672666/const-function-parameter-in-c

で、MQLの特徴は、パラメータによる配列の受け渡しを禁止 すること、つまり参照のみで

Константный параметр функции в С#
  • 2012.06.11
  • TheLazyChap
  • qaru.site
Имея запрограммированный в С++ в прошлом, я помню, что мы могли бы сделать постоянный параметр reference/pointer в методе. Если моя память правильная, ниже указано, что метод не может изменить ссылку, а сама ссылка является постоянной...
 
Igor Makanu:

そうです。関数のシグネチャにconstを書くことを禁止しているのがC#の特徴です。

私はおそらくよく理解していませんが、このC#の機能はワイルドに見えますね。

 
fxsaber:

たぶん、よくわからないけど、C#のこの機能はワイルドに見える!?

曰く、「タダで貰えるものは何でも使う」 ))))

MQLでこの制限を取り除くために、defineやtemplateでコンパイラーを「騙す」方法はないのでしょうか?

 
Igor Makanu:

MQLのこの制限から逃れるために、defineやtemplateでコンパイラーを「騙す」方法はないのでしょうか?

質問された

 
Реter Konow :

問題は、サービスとアドバイザーの間で、リソースを介した双方向のコミュニケーションを組織化できるかどうかです。

もしそうなら、間違いなく便利で有用なものです

まったくその通りです。現在のバージョンでも可能ですが、何らかの専用ソリューションを作成する必要があります。EA/指標とサービス間、サービス間の 通信のためのビルトインソリューションがあればいいと思います。レナートは、そのことを間違いなく知っている。

このようなコミュニケーション上の問題を解決するMetaquotesのソリューションが待ち遠しいです :-)

 
Alain Verleyen:

まったくその通りです。現在のバージョンでも可能ですが、何らかの特別な解決策を作る必要があります。エキスパート/インジケーターとサービス間、またサービス間の コミュニケーションのためのビルトインソリューションがあればいいと思います。レナートは、そのことを間違いなく知っている。

このようなコミュニケーション上の問題を解決するMetaquotesのソリューションが待ち遠しいです :-)

MT5でEAとインジケーターの通信を行うためのソリューションがあります。今、テストしているところです。しかし、現代のアルゴリズム取引に不可欠なMT5プログラムの複雑で多次元な通信の開発について話すなら、データの流れを調整する特別な「メディエーター」に実装された、よく考え開発された通信方法が必要だということが分かっています。これは私のテーマで、開発しているところです。:)
 

GlobalVariable Terminalでは、1つの変数で最大8バイトの情報を転送することができます。

異なるMQL5プログラムからのアクセスを区別するために、GlobalVariableSetOnConditionを 使用することができます。