全体的に悪くない記事だ。プログラミングの教科書よりもいいし、それほど乾いていないし、かなり明晰だ。
例題が気に入らなかった:「OOPを使った多次元配列」。これは単純な実装だが、このような動的配列のその後の作業はかなり「トリッキー」である。

- www.mql5.com
さて、MQL5プログラミング・チュートリアルの冒頭部分がほぼ完成した。
ただひとつ、OOPでの配列の実装が非常に苦しそうだ。
この配列をOOPでもっとうまくやる方法について、何か提案はありますか?
JavaScriptのようなものを得ようとしています:
var ar=new Array();
ar[0]=new Array();
ar[1]=new Array();
ar[2]=new Array();
ar[0][0]=1;
ar[0][1]=2;
alert(ar[0][1]);
最大の難点は、JavaScriptではリストを一度に配列に入れられることだ:
ar[0][2]=Array(131,132,133,134);
alert(ar[0][2][3]);
そして、ここではそのようなことは思いつかない。したがって、どう考えても良い変形はないだろう。
僕はYurichの 動的配列の実装が好きなんだ。https://www.mql5.com/ru/forum/6729/page3、パフォーマンス的にどれくらい効率的なのかはわからないけど、コードの読みやすさという点では最高だよ。
全くの初心者だけでなく、MT5を初めて使う実験的なプログラマーにとっても、非常に良い記事です。最後のセクション「OOPを使った多次元配列の作成」だけが、最も興味のないところだ。
しかし、ちょっとした間違いがある:
Array indexing order can be determined using the ArrayIsSeries() function:
bool series=ArrayIsSeries(ar);
配列のインデックスが逆順の場合、関数は真を返します。
これは偽です。配列のインデックス順を知るために使う関数はArrayGetAsSeries() である。
ArrayIsSeries() は、配列が時系列か どうかを判定するために使用する。
There is only one method that allows you to do a search in an unsorted array
これは厳密には正しくない。ハッシュ・ベースの検索アルゴリズムを見て ほしい。しかし、このアルゴリズムはおそらくトレーディングには適用できないだろう。

- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事 MQL5 プログラミング基礎:配列 はパブリッシュされました:
配列は変数や関数と共にほとんどすべてのプログラム言語に欠くことのできないものです。本稿はまず MQL5 初心者プログラマーに関心を持ってもらえる内容であり、経験あるプログラマーにとっては知識をまとめ体系化するのによい機会となるはずです。
作者: Dmitry Fedoseev