-Hey, dynamic array, I want to send you data. と伝えると、 -How big is your data? と伝えると、 -Here, 100 と伝えると、 -Okay, allocate me memory for 100 elements, and then send it.と伝える。そうでなければ、私は受け取らない。
Организация доступа к данным - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
この解釈には、ヘルプは同意していません。
ヘルプはmql用に書かれており、mqlはciで書かれています ))
cの基本を知ることで、何がどうなっているかが明確になります。
単純な話、ヘルプに書いてあることを理解していなかったのだと思います。
大体において、正しくない!
大体において、正しくない!
それについて議論するつもりはない。
ヘルプはmql用に書かれており、mqlはciで書かれています ))
C言語の基本を知っていれば、何が何だかわかると思います。
C言語では配列や 文字列のサイズは あらかじめ不明ですが、MQLでは既知です。これは大きな違いです。したがって、MQLでは、これらを重複させる冗長なパラメータは不要です。
C言語では配列や 文字列のサイズは事前に不明ですが、MQLでは既知です。これは大きな違いですが、MQLではこれらを重複させた冗長なパラメータは必要ありません。
動的配列は動的であるからこそ、ユーザーが任意のサイズを取得できることを期待するのです。
動的配列が何を望んでいるかを理解するために、プログラマは彼にこう言うべきです:
-おい、動的配列、データを送りたいんだ。
そして彼は答えます:
-それで、データの型とサイズは?
あなたが彼にこう言う:
-ほら、char 100要素
彼が答える:
-よし、私が同じ型なら、 これらの要素に100バイトのメモリを割り当て、それを送ってください。そうでなければ、私はそれを受け入れない。
;))
しかし、パラメータにゼロでも指定することで、プロセスオートメーション自体が転送するデータのサイズを計算してくれるようになり、生活が楽になりましたね。つまり、新参者に対する追加の保護と言うことです。しかし、明示的にサイズを渡して制御しないと、後でデバッグするときに困ります。
動的配列は、ユーザーが任意のサイズを取得することを想定しているため、動的です。
-Hey, dynamic array, I want to send you data.
と伝えると、
-How big is your data?
と伝えると、
-Here, 100
と伝えると、
-Okay, allocate me memory for 100 elements, and then send it.と伝える。そうでなければ、私は受け取らない。
;))
しかし、パラメータにゼロでも指定すれば、プロセスオートメーション自身が転送データのサイズを計算してくれるため、生活がシンプルになります。つまり、新参者に対する追加の保護と言うことです。しかし、明示的にサイズを渡して制御しないと、後でデバッグするときに困ります。
正直なところ、これはアレイにとって致命的なケースで残酷なことです。普段は便利なんですけどね...。
正直なところ、これは配列のクリティカルなケースでの癇癪です。動的配列の サイズを超えた出口という形で見る限り......。通常時は便利なのですが・・・。
配列オーバーラン、プログラマレベルです ))
配列の外に入力するのはプログラマーレベル ))
これは、履歴バーが完全にロードされていない場合によくある状況です。ウィンドウ幅によって履歴をロードするための古典的なチェックも、常に適切とは限りません。
そしてこれは、特に低頻度の状況であれば、必ずしもアルゴリズム担当者のレベルではありません。
これは、履歴バーが完全にロードされていない場合によくある状況です。ウィンドウ幅によって履歴をロードするための古典的なチェックも、常に適切とは限りません。
であり、特に低頻度であればアルゴリズム担当者のレベルとは限らない。
役に立ちませんか?
これだけはMT5プラットフォームの特殊性であって、言語の基本ではありません。
それでもダメなら、開発者に知らせた方がいいでしょうね。