Fehler, Irrtümer, Fragen - Seite 1741
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Möchten Sie den tatsächlichen Typ des Objekts per Zeiger ermitteln?
So etwas wie eine Funktion:
Der Typenname generiert zur Kompilierzeit eine Zeichenkette, weshalb Sie die "Schwänze ziehen" müssen.
Möchten Sie den tatsächlichen Objekttyp per Zeiger abrufen?
So etwas wie eine Funktion:
Ja, hier.
Stanislav Korotky:
Ich würde es gerne subtiler gestalten. Aber wie? In MQL gibt die Methodetypename(this) in virtual base die Basisklasse zurück. In C++ gibttypeid(*this).name() in der virtuellen Basismethode die tatsächliche Objektklasse zurück.
Gibt es diese Funktion nur bei Profilveröffentlichungen?
Ich kriege es einfach nicht auf die Reihe.
int b=2;//b1
int aa(int a, int b)
{
return(a+a+b+b);
}
eines der a und b im Gegenzug sollte extern //a1 und //b1 sein. Das ist nicht der Fall.
a + ::a + b + ::b
Aber im Allgemeinen sollten Sie für eine solche Praxis einen Klaps auf die Hand bekommen.
a + ::a + b + ::b
Aber im Allgemeinen sollten Sie für eine solche Praxis bestraft werden.
Danke) Ich habe kein C++-Buch zur Hand. Aber ich erinnere mich, dass es visuell so aussah, als ob es das enthielte. Ich muss es vergessen haben. Ich habe es noch nie für diesen Zweck verwendet. Nun, jetzt muss ich die Variable überall ändern - jetzt.
Nun, dafür wurde sie eigentlich konzipiert. Sie irren sich also. Sie sollten es nicht missbrauchen.
Beim Ziehen(CHARTEVENT_OBJECT_DRAG) eines grafischen Objekts OBJ_CHART mit der Maus wird das aktuelle Anzeigeintervall in OBJ_CHART zurückgesetzt.
Bitte entfernen Sie diese Rücksetzung in der nächsten Version.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Wanzen, Wanzen, Fragen
Ilyas, 2016.10.18 09:24
Warum fügen Sie die Initialisierungsliste nicht in den Textkörper ein? Bildlich gesprochen wird ein Klassenobjekt (einschließlich dessen this) mit dem Zeichen ':' initialisiert{
const int a;
A() : this.a(0) {} // 'this' - struct member undefined && '.' - member(s) initialization expected
// A() : a(this.a) {} // no problem
};
Kennung
Beschreibung
Art der Immobilie
CHART_KOMMENTAR
Text des Kommentars zum Diagramm
String
CHART_EXPERT_NAME
Name des Expert Advisors, der auf dem Chart mit der angegebenen chart_id gestartet wurde
String
CHART_SCRIPT_NAME
Name des Skripts, das auf dem Diagramm mit der angegebenen chart_id gestartet wird
String
Es wurde viel Zeit in die Lokalisierung investiert. EA
{
public:
const string Name;
const long Chart;
int GetSubWindow( void ) const
{
const ulong StartTime = GetMicrosecondCount();
const int Res = ObjectFind(this.Chart, this.Name);
Print((string)(GetMicrosecondCount() - StartTime) + " mcs.");
return(Res);
}
CHARTOBJECT( const ENUM_OBJECT object_type, const long chart_id = 0 ) :
Name((string)MathRand()), Chart(chart_id)
{
ObjectCreate(this.Chart, this.Name, object_type, 0, 0, 0);
}
~CHARTOBJECT( void )
{
if (this.GetSubWindow() != -1)
ObjectDelete(this.Chart, this.Name);
}
long GetProperty( const ENUM_OBJECT_PROPERTY_INTEGER Property, const int Modifier = 0 ) const
{
return(ObjectGetInteger(this.Chart, this.Name, Property, Modifier));
}
};
CHARTOBJECT Chart(OBJ_CHART);
CHARTOBJECT* Bitmap;
void OnInit()
{
Bitmap = new CHARTOBJECT(OBJ_BITMAP_LABEL, Chart.GetProperty(OBJPROP_CHART_ID));
}
void OnDeinit( const int Reason )
{
Bitmap.GetSubWindow();
delete Bitmap;
}
Nachdem Sie sie aus dem Diagramm entfernt haben, wird ein Protokoll ausgegeben
2016.10.22 19:35:48.351 Test9 (AUDCAD,M1) 3005619 mcs.
Drei Sekunden später war er entfernt und draußen. Wird nur in der Release-Version wiedergegeben. Während der Fehlersuche ist alles normal.
Bitte bestätigen Sie sich selbst. Im Skriptmodus funktionierte die Wiedergabe nicht. Nur der EA.