エラー、バグ、質問 - ページ 2259

 
fxsaber:

これでオプション......なぜそのような書き方をするのか、不明です。A::がすでにすべてを語っているとき。

この場合、ハイライトされたA::には何が書かれているのでしょうか?

class A { public:
    static int a;
};
int A::a;
class C { public:
        int a;
};
class D : public C {};
class B : public D {
        int a;
        void f1() { this.a    = 0; }
        void f2() {      A::a = 0; }
        void f3() { this.C::a = 0; }
};
 
A100:

この場合、ハイライトされたA::はどのような意味を持つのでしょうか?

このコンテキストにおける静的フィールドへの参照。でも、言いたいことはわかりました、ありがとうございます。

 
A100:

コンパイルエラー (ME00188132)

それ以外は。

大丈夫です。何が違うの?

残念ながら、この動作は近いうちに修正される予定はありません。

これは、MQLにおけるテンプレートの実装の「特徴」です。

このコードでは、Aの前にBをインスタンス化する必要があります。

 
A100:

マクロは関係ありません。これを通常のポインタに置き換えても、まったく同じ構文になります。

MQLではb.A::xを明示的に参照することはできませんが、C++では可能です。なぜそのような制限があるのですか?

メンバへのアクセスの スコープ対応については、後ほどインターフェースからの多重継承を実装する際に紹介する予定です。

 
Ilyas:

インターフェースからの多重継承を実装する場合。

ああ、そうなるね )

 

ここで質問ですが、МТ配信のCMatrixDoubleというクラスがあります: #include <MathAlglib</Matrix.mqh>

しかし,行列を転置するメソッドがないため,このクラスを使って行列をできるだけ早く転置するには,親クラスの「行」クラス CRowDouble で配列にアクセスする必要があります.

class CRowDouble
  {
private:
   double            m_array[];

で、行を列にコピーするだけです。

配列 m_array[];アクセス指定子 public ( テンプレート ) でアクセス可能に する方法、または他の「手品」はありますか?

PS: そして、一般的に、開発者の皆さん、なぜMQLレベルで2次元動的配列の 作業を実装できないのでしょうか。多次元動的配列の一般的なケースでOKですが、2次元動的配列は かなり頻繁に必要です、我々は常に基本的なことを行うために何かを考える必要があります
 
fxsaber:
右上に未読のPMがずっとあるというアイコンがあるのですが、これは何ですか?リセットする方法はありません - 読んでみてください。すべて既読にする」ボタンの追加をお願いします。

mql5.comのタブを1つ開いたままにして、メッセージを読むとリセットされます。複数のタブを開いている限り、カウンターは常に非アクティブな別のタブに保持されます。

 
Andrey Khatimlianskii:

mql5.comのタブを1つ開いたままにして、メッセージを読むとリセットされます。複数のタブを開いている間は、カウンターは常に非アクティブな別のタブに保持されます。

残念ながら、レシピはうまくいきません。

 
fxsaber:

残念ながら、レシピはうまくいきません。

PMに表示されているユーザーを2回クリックしてみてください。unread messagesの文字が消えるまで。私には効果的です。

例:メッセージに移動し、右側のそのユーザーをもう一度クリックする。
 
Vladislav Andruschenko:
lpのユーザーをダブルクリックしてみてください。unread messagesの文字が消えるまで。私のために働く。

例:メッセージに移動し、右側のユーザーをもう一度クリックする。

別のコンピュータに移動し、そこではすべてうまくいっています。前作に戻ったら、挑戦してみます。ご推薦ありがとうございます。