ライブラリはMQL4とMQL5で動作します。
感謝の気持ちは、MQLのウェブ・リソースを使った実践的な仕事の例という形で受け取ります。)
MT4で動作。MT5ではStack overflowというエラーが表示されます。オーバーフローの場所に関する情報はありません。デバッガは単にクラッシュします。
このエラーは初歩的な例で表示されます:
判明したように、スクリプトは90行目でクラッシュし、'm_e'のサイズが1から2倍に増加した:
追伸:MT5 ビルド 1210
ライブラリをありがとう。
このライブラリを使って、どうやって配列をくっつけるのかがわからないんだ。
例えば
string a[] = {"1", "2", "3"}; int b[] = {1, 2, 3}; double c[] = {1.1, 2.9, 3.03};
問題はCJAVal型の変数を宣言する レベルで発生します。CJAVal primer(jtARRAY, a); を使っても解決しません。
例で示された配列の例は、私にはうまくいきません。配列に10個の値がある場合はどうなるのでしょうか? CJAVal型の変数を新たに10個作らなければならないのでしょうか?
例題ファイルを補足または拡張していただけませんか?
p.s.私は初めてjsonフォーマットを使います。私はあなたのサンプルファイルのプログラムを勉強しました。
それは大変な仕事だね!何のために?小さな行から2、3の変数を取り出すためだ。
なぜ、あのような書式になっているのか?誰も調べようとしないのか?結局のところ、コードベースなのだ。
どんなデータでも素早くファイルに書き込んで、素早く取り出すというアイデアに興味があります。リブが人間の目にとって読みやすいフォーマットになっていないのは残念ですが :( おそらく自分自身のタスクのためにこのようなプログラムを書くことになるでしょう。
コードは可能な限り簡略化されている!
PHPやC#のシリアライゼーションとは違う。
ここには一匙の酸味がある:
virtual CJAVal *FindKey(string akey) { for(int i=0; i<ArraySize(m_e); i++) if(m_e[i].m_key==akey) return GetPointer(m_e[i]); return NULL; }キーは単純な総当たりで検索される。大きなデータで素早く作業することはできない。
PHPやC#のシリアライゼーションとは違うのだ。
ここにはスプーン1杯分のタールがある:
キーは単純な総当たり検索で見つかる。大きなデータを素早く扱うことはできないだろう。ハッシュ要素の数には限りがあるんだ。

- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
JSONシリアライズとデシリアライズ(ネイティブMQL):
作者: o_O