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

 

文法エラー

struct S {};
class A {
        int S() { return 1; }
        int f() { return S(); } //syntax error, если нет уточнения A::S() //а обязательно ли оно ???
};
が、このように
struct S {};
class A {
        void S() {}
        void f() { S(); }
};
OK、ではコンパイラはA::S()が暗示的であることを理解し、明示的に記述する必要はないのですね
 

専門家の皆様、カスタム MAインジケータ(添付)に「Apply to:...」という機能を実装するにはどうすればよいでしょうか。" ?

を標準のMoving Averageのように「Apply to: First Indikator's Data」にします。

フォーラムでこの質問をしましたが、誰もこの可能性を知らないし、MQLでは使えないと言っています。

また、開発者に質問なのですが、なぜ内蔵の標準インジケーターのコードは閉じられていて、修正できないのでしょうか?

ファイル:
MAchannel.mq4  7 kb
 
コンパイルエラー: 定数は変更できません
class A {};
class B { public:
        const A *a; //здесь не - const A * const a
};
class C { public:
        B b;
        void f( const A *aa ) { this.b.a = aa; } //'a' - constant cannot be modified
};

ポインタが (const A *) と宣言されており,かつクラスのメンバである場合,ポインタを代入することはできません.

が、単なるクラスメンバーであれば問題なし

class A {};
class C { public:
        const A *a;
        void f( const A *aa ) { this.a = aa; } //нормально
};
 
実行エラー
#define  PRN             Print( __FUNCSIG__ )
class A { public:
        A()       { PRN; }
        void F1() { PRN; }
        void g()  { F1(); PRN; } //здесь пропускает вызов A::F1()
};
class F1 { public:
        F1()     { PRN; }
        ~F1()    { PRN; }
};
void OnStart()
{
        A a;
        a.g();
}
 

前回の記事の最後に、明示的にコンストラクタを呼び出すという、ちょっと珍しいケースを紹介します。

#define  PRN             Print( __FUNCSIG__ )
class A { public:
        A()       { PRN; }
        void g()  { F1::F1(); PRN; } //ошибка компиляции в то время как С++ вызывает безымянные конструктор и деструктор как если бы было ниже
        void f()  { F1 f1;    PRN; } //нормально
};
class F1 { public:
        F1()     { PRN; }
        ~F1()    { PRN; }
};
void OnStart()
{
        A a;
        a.g();
        a.f();
}
 
define, ifdef, ifndef, endif, else, undef と # の間にスペースやタブが入る可能性を追加することが望ましい。
#ifdef  MACRO
#        define MACRO1
#else
#        define MACRO2
#endif
条件が複雑な場合は、インデントをつけると読みやすくなります
 

defineの後にコメントが可能な場合があります。

#define /*MICRO*/ SOFT //ошибка компиляции
 
A100:

defineの後にコメントが可能な場合があります。

お問い合わせありがとうございます、対応いたします
 

アイコンの鮮明さが著しく損なわれている

ビルド1060でした

ビルド1100となる

透明度を犠牲にしてまでサイズを大きくする必要があるのでしょうか?

 
A100:

アイコンの鮮明さが著しく損なわれている

ビルド1060でした

ビルド1100となる

どのような画面を使っているのですか?解像度は?文字サイズは何%に設定されていますか?