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
es spielt keine Rolle, was zu initialisieren, auch int - jede Zahl, um diesen Konstruktor aufzurufen
und ich habe 0,0 gewählt, um Druckfehler zu vermeiden - eine beliebige Ziffer, d. h. 0,0. Sie ist schwieriger zu schreiben und falsch zu drucken als 123
(doppelt)0
aber auch nicht so)))) hat sich den Code gerade normal angeschaut, es gibt noch eine Möglichkeit, ihn abnormal zu betrachten))(doppelt)0
keine
Ich schreibe nur 0,0 - keine anderen Zahlen werden erwartet - es gibt nicht einmal eine Variable im Konstruktor
im Allgemeinen, als modischer Stil eines Autors, vielleicht nicht der beste
der Punkt ist nicht das x), sondern dass es einen Float auf dem Empfänger geben kann, und es ist auch nicht zuverlässig, 0,0 anzugeben
0.0 ist für den Compiler eindeutig double, float ist 0.f
Kredit)
Da die Rubrik "Fragen über 50" offen ist, möchte ich meine eigene zum Thema Gipsabdrücke einbringen.
- Welche Möglichkeiten gibt es, den Code im Hinblick auf Fehlertoleranz oder Nicht-Redundanz zu verbessern?
- Ist die PrüfungCheckPointer()!=POINTER_INVALID notwendig? Oder definitiv nicht notwendig? Erklären Sie warum.
- Bringing to non-const, so dass es möglich ist, Non-Const-Methoden aufzurufen. Können Nicht-Konst-Methoden direkt in der Compare-Methode aufgerufen werden, d.h. die gelb markierte const loswerden?
Da die Rubrik "Fragen über 50" offen ist, möchte ich meine eigenen zum Thema Gipsabdrücke einbringen.
- Welche Möglichkeiten gibt es, den Code im Hinblick auf Fehlertoleranz oder Nicht-Redundanz zu verbessern?
- Ist die Prüfung CheckPointer()!=POINTER_INVALID notwendig? Oder definitiv nicht notwendig? Erklären Sie warum.
- Bringing to non-const, so dass es möglich ist, Non-Const-Methoden aufzurufen. Können Nicht-Konst-Methoden direkt in der Compare-Methode aufgerufen werden, d.h. die gelb markierte const loswerden?
Scheint die gleiche zu sein wie Ihre, nur mit weniger Buchstaben. Es ist Geschmackssache, wem es besser gefällt, aber ich habe die zusätzliche Variable entfernt (der Compiler würde sie im Rahmen der Optimierung wahrscheinlich auch entfernen).
Bezüglich meines !node-Checks. Er muss durch CheckPointer(node)==POINTER_INVALID ersetzt werden, aber das ist ein Overhead - ein Funktionsaufruf. Selbst wenn es inlined ist, wird zumindest das Statusflag dereferenziert und überprüft. Wenn nur Bibliothek oder konkrete, Sie geschrieben haben Programm wird Compare-Methoden verwenden, besser !node und auf Code für ungültige Zeiger zu beobachten. Wenn Sie zu faul sind, auf Zeiger zu achten, oder wenn es sich um eine Bibliothek für Außenseiter handelt, genügt CheckPointer(node)==POINTER_INVALID.
Wenn Sie den hervorgehobenen const-Spezifizierer entfernen, können Sie diese Methoden nicht von einem konstanten Objekt aus aufrufen.
UPD: Die hervorgehobene Prüfung kann entfernt werden, da sie in den aufgerufenen Methoden enthalten ist.
Da die Rubrik "Fragen über 50" offen ist, möchte ich meine eigenen zum Thema Gipsabdrücke einbringen.
- Welche Möglichkeiten gibt es, den Code im Hinblick auf Fehlertoleranz oder Nicht-Redundanz zu verbessern?
- Ist die Prüfung CheckPointer()!=POINTER_INVALID notwendig? Oder definitiv nicht notwendig? Erklären Sie warum.
- Bringing to non-const, so dass es möglich ist, Non-Const-Methoden aufzurufen. Ist es möglich, eine Nicht-Konst-Methode direkt in der Compare-Methode aufzurufen, d.h. die gelb markierte const loszuwerden?
Die Idee ist, zwei Methoden der gleichen Funktion mit und ohne den const-Body zu schreiben - gelinde gesagt - das lohnt sich nicht))))
Aber die Wahrscheinlichkeit, auf zwei Methoden zu stoßen, liegt nahe bei Null.... Weil die Möglichkeit der Existenz vonCChartObjectRectangle::Price - ohne const im Körper - ich denke, es ist unwahrscheinlich.
Der Aufruf dieser Funktion von außen hat keine Auswirkungen. D.h. die const funktioniert nur mit internen Funktionen und stellt sicher, dass nichts in den Speicher des Objekts geschrieben wurde (der Wert der Variablen wurde nicht verändert). Mit anderen Worten, Sie können Set(a) nicht während der Konst... Oft, in einigen Verwirrung, um sicherzustellen, dass diese Funktion nicht überschreiben nichts, können Sie schnell diese Konstanten (obwohl dies wahrscheinlich meine Löschung).
Bedenken Sie, dass die Konstanten einfach überall hingeschoben werden sollten, ohne dass Sie )))) bekommen, damit es einfacher ist, später etwas zu überprüfen.
Braucht CheckPointer()!=POINTER_INVALID eine Prüfung?
Und warum nicht.... make one bool Check(<template> &T) { retun CheckPointer(T)!=POINTER_INVALID } Der Compiler sollte es so einfach wie möglich machen. Und es wird noch besser aussehen.
Es ist schneller.
Nun, ich habe nicht viel verändert.
Dies ist Ihr gesamter Code.
Es scheint dasselbe zu sein wie bei Ihnen, nur mit weniger Buchstaben. Es ist also Geschmackssache, aber ich habe die zusätzliche Variable entfernt (höchstwahrscheinlich hätte der Compiler sie im Rahmen der Optimierung entfernt).
Bezüglich meines !node-Checks. Er muss durch CheckPointer(node)==POINTER_INVALID ersetzt werden, aber das ist ein Overhead - ein Funktionsaufruf. Selbst wenn es inlined ist, wird zumindest das Statusflag dereferenziert und überprüft. Wenn nur Bibliothek oder konkrete, Sie geschrieben haben Programm wird Compare-Methoden verwenden, besser !node und auf Code für ungültige Zeiger zu beobachten. Wenn Sie zu faul sind, auf Zeiger zu achten, oder wenn es sich um eine Bibliothek für Außenseiter handelt, genügt CheckPointer(node)==POINTER_INVALID.
Wenn Sie den const-Spezifizierer entfernen, können Sie diese Methoden nicht von einem konstanten Objekt aus aufrufen.
es hat lange gedauert, bis ich die Registerkarte geöffnet habe
Ich schätze, dass 4 Jahre College nicht viel zu meinem Wissen beigetragen haben (die Erklärung hinkt im Papierkorb hinterher).
die Variante ohne die Konstitution, da die Basisklasse keinen Bezug zu Eingabeparametern hat, wird ebenfalls korrekt funktionieren, auch wenn dies kein sehr intelligenter Stil ist
Auch eine Variante desselben Codes.
Es ist die gleiche mit den Konstanten.