#define .<один любой набор символов>()=<второй любой набор символов> Set<один любой набор символов>(<второй любой набор символов>)
#define .<один любой набор символов>(par1)=<второй любой набор символов> Set<один любой набор символов>(par1,<второй любой набор символов>)
ありがとうございます、そのような実装も思いつきましたが、Value1自体がないため、ちょっと違いますね。つまり、私が作った例はもちろん極めて単純化されたものですが、これがクラスの主要な価値ではなく、このような価値はいくつもありうるし、それぞれについてこのような構成が記述できることを暗示しているのです。
あるいは、そのような実装の場合、オーバーロードを実装するクラスや構造体だけを別に記述し、そのクラス内に、作成した型の変数を記述することは可能でしょうか?しかし、クラスの他の変数が割り当て操作に関与している場合、再び、辻褄が合わなくなる。
実は、Let/Set/Getメソッドと 似たようなものをvbsで 実装したかったのです。
質問の意味がよくわからないのですが、C++ / MQLにはキープロパティがありません Property
たぶん、テンプレートクラスが必要ですhttps://www.mql5.com/ru/docs/basis/oop/class_templates
UPD: 同じことについてのHabraの記事ですhttps://habr.com/ru/post/121799/ 、 しかし、私はそれがMQLに「直接」当てはまるかどうか疑問です。
ありがとうございました。
C++を勉強したことがないので、ちょっと私の知識を超えていますが、まさに私が欲しかったものだと思われます。何とかしてみます。
ありがとうございました。
C++を勉強したことがないので、これは私の知識を超えていますが、まさに私が望んでいたことだと思われます。何とかしてみます。
このスレッドで質問を簡潔にまとめてみてください:https://www.mql5.com/ru/forum/85652
には、本当にクールなプログラマーがいて、そういう人たちがやっているんだ......。まあ、これで早く解決できるかもしれません。
はい、ありがとうございます。
私は、自分が使っていたことを思い出しながら、それがPropertyという名前であることを忘れていて、自分が欲しいものを説明するのに鈍感になっていました。
記事へのコメントでマクロ置換が使えると書かれていましたが、おそらく自分との厳密な構文一致を採用することで、それほど一般的ではないケースをより簡単に実装できるのではと考えさせられました。
こんな松葉杖が作れます)
ありがとうございます。この松葉杖は明らかにもっとシンプルですが、それでもまだすべてを理解しているわけではありません。
マクロの代入に任意の文字セットを入れることは不可能なのでしょうか?こんな感じ。
単に DoubleToString をオーバーロードして、もし文字列"EMPTY_VALUE" が返ってきたらそうでない場合は ::DoubleToString を呼び出します。
ここではわからない。
ここではわからない。
然もなくば
然もなくば
まれに、ソースを作って削除し、二度と見ないようにする)
バッファがインジケータバッファの場合、EMPTY_VALUEに 置き換えることができます。
PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,EMPTY_VALUE);
午後atr インジケータから読み取ったストップロスを 自分のEAに取り付けようとしています。入力変数は以下の通りである。
atrの値をストップロス用の変数に追加しています。
そして、このように注文を開けるようにしています。
しかし、何一つうまくいきません。Stop Loss変数の値を印刷しましたが、その値は0であると報告されました。どこが悪いのか、どこを直せばいいのか、どこをいじればうまくいくのか。