Fehler, Irrtümer, Fragen - Seite 2664

 
Stanislav Korotky:

Hat das jemand zusammengestellt?
Was ist daran falsch?

Schon gut, kommen Sie wieder und holen Sie sich mehr:

class B {};

template<typename T>
class A
{
    static T *array;
    
    static void check(){
      T *ptr = array; 
    }
};

template<typename T>
static T *A::array;

class Y: public A<B>
{
};

void OnStart()
{
  Y y;
}
Definition für statisches Array wurde über die Erstellung der Klasse Y verschoben.
 

Ist es jetzt möglich, Optimierung+Testfür alle Symbole in der Marktübersichtdurchzuführen? Oder wird die gesamte Überprüfung nur ohne Optimierung mit denselben Parametern durchgeführt?


Das heißt, Sie können einen Test nicht nur mit denselben Parametern für die Symbole im Market Watch durchführen, sondern sie gleichzeitig optimieren? Andernfalls wird die Auswahl der Optimierungsparameter blockiert, wenn alle Symbole ausgewählt sind.

Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Askr:

Ist es jetzt möglich, eine Optimierung+Testfür alle Charaktere in der Marktübersichtdurchzuführen?

https://www.mql5.com/ru/code/26132

MultiTester
MultiTester
  • www.mql5.com
Бывает, нужно советник прогнать на множестве символов. Для этого в MT5-тестере существует режим "Все символы, выбранные в окне Обзора рынка". Получается прогон одних и тех же настроек советника на разных символах. Но иногда требуется сделать много различных запусков MT5-тестера. Данная библиотека позволяет это. Возможности. Можно задавать...
 
Ich glaube, ich habe gelesen, dass dies bereits im Standardtester enthalten ist?

Ich würde gerne wissen, wie man Ihre Bibliotheken ausführt, es ist nicht klar. Schließlich müssen Sie den Expert Advisor selbst im Testgerät angeben, aber wie starten Sie die Bibliothek?

Oder kopieren Sie das Skyal in das Terminal und alles funktioniert von selbst?
 
Askr:
Oder haben Sie die Scial in das Terminal kopiert und alles funktioniert von selbst?

Ja.

 
Alexey Kozitsyn:
Kann nicht in den Speicher übertragen werden...

Wieder das gleiche Problem! Entwickler, bitte behebt den Speicherplatz! Es ist unmöglich, damit zu arbeiten. Häufiger Fehler.

 
Sergey Dzyublik:

Ist schon gut, kommen Sie wieder:

Wir bleiben in Kontakt. Dieser Code funktioniert:

class A
{
  protected:
    int field;

  public:
    A() { field = rand(); }
};

class B: public A
{
  public:
    B(A &origin)
    {
      field = origin.field;// это другой экземпляр, C++ дает ошибку 'int A::field' is protected
    }
    int getField(void) const
    {
      return field;
    }
};


void OnStart()
{
    A a;
    B b(a);
    Print(b.getField());
}

Nach den C++-Regeln sollte es jedoch keinen Zugriff auf ein geschütztes (Feld eines anderen Objekts, wenn auch derselben Klasse, erlauben ; protected bezeichnet den Zugriff nur auf geerbte Felder desselben Objekts, während der Zugriff auf fremde Felder öffentlich sein muss). Ist dies ein Fehler oder eine Funktion?

 
Stanislav Korotky:

Wir drehen uns um. Das ist der Code, der funktioniert:

Aber nach den C++-Regeln sollte es den Zugriff auf protected zur Kompilierzeit nicht erlauben. Ist es ein Fehler oder eine Korrektur?

Was meinen Sie mit "es sollte nicht"? An welchem Ort genau? Ihr Code ist also eine öffentliche Vererbung (d.h. die vererbten Mitglieder in den Nachkommen werden öffentlich) und die Methode ist öffentlich.

s.w. rieb sich die Augen, sah wo, sorry)
 
Stanislav Korotky:

Wir drehen uns um. Das ist der Code, der funktioniert:
Aber nach den C++-Regeln sollte es den Zugriff auf protected zur Kompilierzeit nicht erlauben. Ist dies ein Fehler oder eine Korrektur?

Ja, C++ online flucht:https://onlinegdb.com/Hkv1_13EU
Das bleibt den Entwicklern überlassen.

 
Sergey Dzyublik:

Ja, C++ online flucht:https://onlinegdb.com/Hkv1_13EU
Das bleibt den Entwicklern überlassen.

Ja, wir sollten auf die Entwickler hören. Diese Lücke habe ich nun ausgenutzt. Wenn sie es schließen, muss ich nach anderen Wegen suchen.