//должен обращаться к функции, хотя бы потому что уж стоят скобки и тип, да еще a базового класса приватныйclass A { int a; };
class B : A { void a(); };
void B::a() {}
// здесь инлайнится, все правильноclass A { int a; };
class B : A { void a() {} };
// так работает, видно проблема с компиляторомclass A {int h; void f(); };
class B : A {void a(); };
void B::a() {}
//+------------------------------------------------------------------+//| ds.mq5 |//| Copyright 2015, MetaQuotes Software Corp. |//| https://www.mql5.com |//+------------------------------------------------------------------+#property copyright"Copyright 2015, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+//должен обращаться к функции, хотя бы потому что уж стоят скобки и тип, да еще a базового класса приватныйclass A { int a; };
class B : A { void a(); };
void B::a() {}
// здесь инлайнится, все правильноclass A { int a; };
class B : A {void a() {} };
// так работает, видно проблема с компиляторомclass A {int h; void f(); };
class B : A {void a(); };
void B::a() {}
voidOnStart()
{
// c объектами работает правильно
B variable;
variable.a(); // ошибка доступа, здесь все нормально
variable.a = 1; // ошибка доступа, как и следовало ожидать, здесь все нормально
}
//+------------------------------------------------------------------+
そして第二に、このインジケータのバッファ 値を他のインジケータやExpert Advisorで使用する必要があります。
で、なんか、計算用のバッファを作ると、iCustomでその値を取得 できなくなるような気がします。
ちなみに、正確には覚えていないのですが、できると思います。試してみてください。)
それでも、DRAW_NONEのような属性を持つ12個のインジケータがお互いを呼び出し、そして、マウスポインタの位置によって動作するすべてのインジケータからの読み取りを1つの場所にグループ化する別のサブシステムが既に必要なのです。:)
Compilation error:'a' - is not static member but that's OK.何が違うの?
あなたはどうかわかりませんが、私はすでにいくつかのコンパイラーエラーを目にしています。
1) 継承の際に関数と変数を区別しない。
2) ベースクラスの変数はプライベートなので、まずプライベートメンバーへのアクセスが不可能であるというメッセージが出るはずです
あなたはどうかわかりませんが、私はすでにいくつかのコンパイラーエラーを目にしています。
1) 継承の際に関数と変数を区別しない。
2) ベースクラスの変数はプライベートなので、まずプライベートメンバーへのアクセスは不可能であるというメッセージが出るはずです
いくつか例を挙げてください。このようなコード設計 上の問題は、どのような場合に発生するのか、興味深いところです。
すでに例を挙げたと思います。でも、さらにわかりやすくするために、もっと詳しく説明します。
なお、クラスAの3番目の例では、変数名を "h "に置き換えて、このコードはコンパイルされます(もちろん1、2の例をコメントアウトすれば)ので、私の勘を裏付けることになります。
状況:テストはH1(私はそれが重要だと思う - 私たちは、複数期間のテストについて話している)である。 テスターSeriesInfoIntegerで最後の日(D1)バーは、例えば、2015.10.08を与えます。2015.10.05の値が出ます(オフセットが2で2015.10.06になるはずです)。
テスターでは、時系列作成に比べて指標が遅れていることを意味します。新しいD1バーの開始時に明確に発生します。そのような経験をされた方はいらっしゃいますか?例のシミュレーションはまだしない。
状況:テストはH1で行われます。 テスターのSeriesInfoIntegerで最後の日足(D1)バーは、例えば2015.10.08を与えます。2015.10.05の値が出ます(オフセットが2で2015.10.06になるはずです)。
つまり、テスターでは、時系列の構築に比べ、指標が遅れている。このようなことがあった方はいらっしゃいますか?まだ、例のシミュレーションをするつもりはありません。