MQL5 コンパイラはクラスとそのポインタを区別しない - ページ 9

 
fxsaber:

これはMQLにはない!と確信しました。頭の中の足はどこから来たんだろう...。

KBやDocumentationに1つでも例があるのだろうか?馬鹿正直に見ませんでしたか...。

このような偶然はめったにないことで、この掲示板や他の掲示板の無名ではない別の人が、秋に「ポインターはこういうポインターで、基本型であり、そこから何がとれるか...」と答えてくれたからです。でも、今はちゃんと動くし、ありがたいことです。

 
fxsaber:

これはMQLにはない!と確信しました。私だけでなく、どこであんなに足が生えたんだろう...。

唯一無二の存在ではありません。

 
fxsaber:

KBやDocumentationに1つでも例があるのだろうか?バカなことに気づかなかったのか...。

これだけ見つかりました。

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

エラー、バグ、質問

イリヤス さん 2018.11.22 09:37

一時的な解決策として、演算子「!」を使用します。(ではない)

class A {};

A* a = NULL;

bool b1 = !!a && true;
bool b2 = true && !!a;


解決策を検討します(コード数が多い今、動作を変更することは可能か?)
ポインタの場合、bool変換操作はポインタに対する操作であって、ポインタが指すオブジェクトに対する操作ではない可能性があるのです。

この場合、オブジェクトに対して操作を行うには、次のようなコードを記述する必要があります。

class A {};

A* a = NULL;

bool b1 = * a && true;
bool b2 = true && * a;

ゴーストオペレーターも追加したいが、このタスクは(非常に)非優先である。
 
fxsaber:

これだけ見つかりました。

22.11.2018?3年、うんうんうん...。

 
Ilya Malev:

22.11.2018?3年、うんうんうん...。

機能の発表ではなく、使い方の一例を紹介したのです。

 
fxsaber:

これは機能の発表ではなく、使い方の一例である。

説明しないのは、単に見苦しいだけです...。

 

以下は最近の引用です。

Ilyas:

デリファレンス操作(ハンドルから実ポインタを取得)は、「内部」(カスタムではない) かつ「高価」な(持たない場合と比べて)コードです。

もちろん、管理者が全く別の意味で言っている可能性もありますが...。

しかし、この操作については、ドキュメントにはまったく書かれていない。3年前から動作していたのに、ヘルプやフォーラムに反映されなかったのは非現実的です。

 
fxsaber:

私はこれしか見つけられませんでした

そんなことより、昔、A100さんと私が同じスレッドで*と&の演算子の追加について質問したところ、追加された記憶があります。
 
その議論のリンクは こちらです。約3年半ぶりであることがわかった。時の流れは速いものだ...
 
Alexey Navoykov:
その議論のリンクを ご紹介します。もう3年半近く経っていることがわかりました。時の流れは速いものだ...

そして、これらの操作が実際に 導入されるまでに、どれだけの時間が流れたことか......。風だけが知っているのでしょう。それで、そう、かなり重要なことが何年も前からフォーラムに持ち込まれても、あまり成功しないのです