mqlのIDEとしてのVim - ページ 7

 
Maxim Kuznetsov:

もし私が正しく理解しているならば、我々はまだガード`を使用する必要があり、いくつかの特別なコード要件があるのでしょうか?

私たち自身のヘッダーファイルでは、そうです、ガードが必要です。まずホースを通すと、すべてのフックが大混乱になり、これがµlコンパイラに送られます。ガードがないと、定義が繰り返され、µlコンパイラはエラーを発生します。

コード要件から、そう、原則的に1つだけ -プリプロセッサの 特定のμlディレクティブを 以下のようにパックします。

#ifndef  VIM
mqlcpp_#import  jkjkjk.dll
#endif
void fn_from_jkjkjk_dll();

clangが解析やコンパイル時にこのimportでつまずかないようにするためです。mqlがプリプロセッサへの指示ではなく、特定の構成である場合、mqlcpp_を使用しないでください(使用する必要はありませんが、clangの観点からはこれはある種のエラーとなります)。

#ifndef  VIM
input int            MA_Period=13; // Ну или INPUT макрос
input int            MA_Shift=0;
#else
int            MA_Period=13;
int            MA_Shift=0;
#endif

ポインタを -> で参照解除するか、配列の前に & を置くかは選択次第ですが、C++ のスタイルに従うと clang のサポートが良くなります。

HH: ところで、ガードを追加する文脈で「最初のコンパイル」がどのように定義されるかを教えてくれませんでした。Include/Object.mqhを見て、そこでガードが見つからなければ、まずコンパイルします。また、間抜けな泥棒のためにブラックリストを形成する機能も追加したいですね。
 
Vict:

...

一般的に、あなたの質問は間違っている、より興味深い - 私はすべてのグッズとメタエディタよりもはるかに高い品質で私の膝の上に数日でideを作りました...。

そうですね...これだけの機能があれば、1週間でオペレーティングシステムを書くのは簡単だ)。時々、装飾をするのが好きなのですが、これくらいなら...)

もしかしたら、パズルレベルのソフトを作ることができる、公開されているフレームワークかもしれませんね。まあ、それならみんな自分の好みに合わせてIDEを構築して使えばいいんだけどね)。

あと数日で...
 

読む、読む...。

こういう目立ちたがり屋は見飽きた。

自分自身のためにトレーディング戦略を書いているトレーダーにとって、それらのトリックはすべて必要ないのです。

また、カスタムオーダーの場合、注文するのは初心者がほとんどなので、なおさらです。そこでの注文は、数行のコードで実装された、子供のような無邪気さの連続からです。

もちろん、pythonのサポートが予定されていることもよかったです。

なかなか便利な機能拡張です。

 
Vict:

...あとは、ひたすらMCに祈り、配列の前にアンパサンドを置き、ドットでデリファレンス(参照)する。

ドットに関しては、より便利で饒舌になり、さらにOOP言語との互換性もあります。 逆に、C++に同じ機能があったらいいなと思うことも多々ありました。 もちろん、デメリットもありますが、それ以上にメリットの方が大きいと思っています。
 
Реter Konow:
そのとおりです。そうやって変化した変数名や関数名がどれだけあることか。VSより少し長いが、よりコントロールしやすい。
ファイル内のテキストの通常の自動置換と文脈依存の置換を混同しないようにしましょう。

 
Alexey Navoykov:
に関しては、より便利で饒舌になり、さらにOOP言語との互換性もあります。 逆に、C++で同じ機能を実装できたらいいなと思うことも多々ありました。 もちろん、デメリットもありますが、それ以上にメリットがあると思いますね。

そうすると、スマートポインタやイテレータ、...を捨てなければならない。.ポインタ自体の関数呼び出しと、ポインタされる型とを、何らかの方法で区別しなければならない。

unique_ptr<type> ptr(...);
ptr->call_referenced();
ptr.release();

ポイントはオーバーロードできない。つまり、内部へのアクセスは保証されている。

レナト・アフティアモフ

しかも、注文するのは初心者がほとんどなので、なおさらです。それらは、数行のコードで実装される、子供じみた無邪気な命令である。

私は自分のために書き、自分の知識を他の人と共有するのであって、一部の市場関係者のためではありません。

 
Vict:

そうすると、スマートポインタやイテレータ、...を捨てなければならない。.ポインタ自体の関数呼び出しと、ポインタされる型をどうにかして区別しなければならない。

ポイントはオーバーロードできない。つまり、内部へのアクセスは保証されている。

まあ、MQLでも -> をオーバーロードすることはできないんですけどね。だから、この差は論外なんです。
ところで、このオーバーロードをVimでエミュレートすることは可能なのでしょうか?
 
Alexey Navoykov:
ファイル内のテキストの通常の自動置換と文脈置換を混同しないようにしましょう。

そして、それは何のためにあるのか?異なるコンテクストを持つ変数が、同じファイル内で同じ名前を持つ場合、どうなりますか?テキストではなく、意味による置き換え?どこで、なぜ使うのか、明確にしてください。突然、みんなに必要になり、知らない人もいる。

ザイ。Googleもこの代物を知らない...。
 
Реter Konow:
そして、それは何のためにあるのか?異なるコンテクストを持つ変数が、同じファイル内で同じ名前を持つ場合、どうなりますか?テキストではなく、意味による置き換え?どこで、なぜ使うのか、説明してください。突然、みんなに必要になり、知らない人もいる。
まあ、原理的には正しいんですけどね。
 
Alexey Navoykov:
まあ、原理的には正しいんですけどね。
うまくすれば、アーチ・ライバルのようなものです。))