Vermeiden von Bugs in C ++ Programm

Beginnen Sie nicht mit Ihrem Code Debuggen, bis Sie alle Warnungen während der Kompilierung erzeugt entfernen oder zumindest verstehen. Aktivieren Sie alle Warnmeldungen, wenn Sie sie dann ignorieren tut dir nicht gut. Wenn Sie die Warnung nicht verstehen, schauen Sie. Was Sie nicht wissen, werden

dich verletzen.

Nehmen Sie eine klare und einheitliche Codierung Stil

Codierung in einer klaren und konsistenten Stil verbessert nicht nur die Lesbarkeit des Programms, sondern führt auch zu weniger Codierung Fehler. Denken Sie daran, desto weniger Gehirn Macht, die Sie ausgeben, um C ++ Syntax zu entziffern, je mehr Sie haben für das Nachdenken über die Logik des Programms auf der Hand übrig. Eine gute Art der Programmierung ermöglicht es Ihnen, die folgenden mit Leichtigkeit zu tun:

  • Differenzieren Klassennamen, Objektnamen und Funktionsnamen
  • etwas über das Objekt wissen, basierend auf seinen Namen
  • Differenzieren Präprozessorsymbole von C ++ Symbole (das heißt, #defined Objekte abheben sollte)
  • Identifizieren Sie Blöcke von C ++ Code auf dem gleichen Niveau (das das Ergebnis einer konsequenten Vertiefung ist)

Darüber hinaus müssen Sie ein Standard-Modul-Header zu schaffen, die Informationen über die Funktionen oder Klassen in das Modul, der Autor (vermutlich, das sind Sie), das Datum, die Version des Compilers Sie verwenden, und eine Änderungshistorie zur Verfügung stellt.

Schließlich sind alle in einem einzigen Projekt beteiligten Programmierer sollten den gleichen Stil verwenden. ein Programm mit einem Flickenteppich von unterschiedlichen Codierungsstile zu entziffern versuchen, ist verwirrend.

Kommentieren Sie den Code, wie Sie es schreiben

Sie können Fehler vermeiden, wenn Sie Ihren Code kommentieren, während Sie es schreiben, anstatt, bis alles funktioniert warten und dann Kommentare zurück gehen und hinzufügen. Nicht die Zeit nehmen, bis später umfangreiche Kopf- und Funktionsbeschreibungen zu schreiben, ist verständlich, aber Sie haben immer Zeit, um kurze Kommentare hinzufügen, während Sie den Code zu schreiben.

Kurze Kommentare sollten aufschlussreich sein. Wenn sie es nicht sind, sind sie nicht viel wert, und Sie sollten stattdessen etwas anderes tun. Sie müssen alle die Erleuchtung Sie bekommen können, während Sie versuchen, Ihre Programmarbeit zu machen. Wenn Sie an einem Stück Code sehen Sie vor ein paar Tagen schrieb, Kommentare, die kurz sind, beschreibend, und auf den Punkt kann einen dramatischen Beitrag leisten, Ihnen helfen zu herauszufinden, genau, was es war Sie versuchten, zu tun.

Darüber hinaus stellen Sie konsistente Code Vertiefung und Namenskonventionen der Code leichter zu verstehen. Es ist alles sehr schön, wenn der Code einfach ist, nachdem Sie lesen gerade damit fertig, aber es ist genauso wichtig, dass der Code einfach zu lesen, während Sie es schreiben. Das ist, wenn Sie die Hilfe benötigen.

Single-step einmal jeder Weg zumindest

Als Programmierer, ist es wichtig für Sie zu verstehen, was Ihr Programm tut. Nichts gibt Ihnen ein besseres Gefühl für das, was unter der Haube vor sich geht als das Programm mit einem guten Debugger in Einzelschritten. (Die Debugger in der IDE von interaktiven Compiler enthalten gut funktionieren.)

Darüber hinaus, wie Sie ein Programm schreiben, müssen Sie manchmal Rohstoff einige bizarre Verhalten herauszufinden. Nichts gibt Ihnen das Material besser als Einzelschritt neue Funktionen, wie sie in Dienst kommen.

Schließlich, wenn eine Funktion fertig und bereit ist, um das Programm hinzugefügt werden, muss jeder logischen Pfad mindestens einmal zu fahr. Bugs sind viel leichter zu finden, wenn die Funktion von selbst geprüft wird, statt, nachdem es in den Topf geworfen mit dem Rest der Funktionen ist schon - und Ihre Aufmerksamkeit auf neue Programmierung Herausforderungen gegangen.

Vermeiden Sie Betreiber Überlastung

Anders als mit den beiden Strom I / O-Betreiber operatorlt; lt; () und Operator >> () und der Zuweisungsoperator operator = (), Sie sollten wahrscheinlich eine Überlastung Betreiber halten, bis Sie mit C ++ wohl fühlen. Obwohl eine gute Reihe von überladenen Operatoren können das Dienstprogramm und Lesbarkeit einer neuen Klasse erhöhen, Überlastung Operatoren (andere als die drei aufgeführten nur) ist fast nie notwendig und wesentlich zu Ihrem Debug-Leiden als neuer Programmierer hinzufügen können. Sie können den gleichen Effekt durch die Definition und Verwendung der richtigen öffentlichen Member-Funktionen, anstatt zu bekommen.

Nachdem Sie C-Plus-Plussing für ein paar Monate waren, fühlen sich frei, zurückzukehren und beginnen Betreiber Inhalt Ihres Herzens zu überlasten.

Gleichgewicht Haufen Handhabung

Im Allgemeinen sollten Programmierer zuweisen und Heap-Speicher auf der gleichen Freigabe "Niveau." Wenn eine Elementfunktion MyClass :: create () einen Block von Heap-Speicher reserviert, und gibt sie an den Anrufer, dann sollte es eine Member-Funktion sein MyClass :: Release () dass gibt den Speicher auf dem Heap. Speziell, MyClass :: create () sollte nicht die übergeordnete Funktion benötigen selbst den Speicher freizugeben. Dies ist sicherlich nicht alle Speicherprobleme zu vermeiden - die Mutterfunktion zu nennen vergessen kann MyClass :: Release () - aber es hat die Möglichkeit, etwas zu reduzieren.

Verwenden Sie Ausnahmen Fehler behandeln

Der Ausnahmemechanismus in C ++ ist so konzipiert, Fehler bequem und effizient zu handhaben. Nun, da diese Funktion standardisiert wurde, sollten Sie es verwenden. Der resultierende Code ist einfacher zu schreiben, leichter zu lesen und einfacher zu warten. Außerdem haben andere Programmierer kommen, es zu erwarten - Sie würden nicht enttäuschen wollen, würden Sie?

Vermeiden Sie Mehrfachvererbung

Mehrfachvererbung, wie Überladen von Operatoren, fügt eine weitere Ebene der Komplexität, die Sie brauchen nicht zu behandeln, wenn Sie gerade erst anfangen. Glücklicherweise können die meisten realen Beziehungen mit einfacher Vererbung beschrieben.

Fühlen Sie sich frei mehrere vererbte Klassen von kommerziellen Bibliotheken, wie die Microsoft MFC-Klassen zu verwenden. Microsoft hat eine beträchtliche Menge an Zeit, den Aufbau der Klassen ausgegeben, und er weiß, was er tut.

Nachdem Sie mit Ihrem Maß an Verständnis für C ++, experimentieren Sie mit der Einrichtung einige mehrere Vererbungshierarchien wohl fühlen. Auf diese Weise werden Sie bereit, wenn Sie es brauchen.

Menü