10 Möglichkeiten, Code :: Blocks Anpassen

Code :: Blocks ist mit Standardeinstellungen, die die natürlichste für die meisten C ++ Progr jedoch sind, wie Sie verbringen immer mehr Zeit in der Umgebung starten, können Sie diesen Code finden :: Blocks kann ein freundlicher Ort mit nur ein paar Veränderungen sein .

Verwenden Sie Tab-Zeichen

Oder genauer gesagt, nicht Tab-Zeichen verwenden. Diese Einstellung macht keinen Unterschied, ob Sie an einem Projekt arbeiten, in dem jeder wird immer Code :: Blocks werden. Das Problem mit dem Tabulatorzeichen, ist jedoch, dass verschiedene Editoren neigen tabs anders zu interpretieren. Einige Editoren bewegen Sie den Cursor auf die nächste Tabstopp einige Redakteure bewegen Sie den Cursor über eine bestimmte Anzahl von Zeichen, und nicht alle Redakteure einig, wie viele Zeichen für eine Registerkarte zuzuweisen. Zum Glück alle Editoren interpretieren Räume die gleiche, so ist es viel sicherer, den Code zu erklären :: Blocks Editor immer Leerzeichen verwenden und niemals Tabs in den Quelldateien speichern. Dazu wählen Sie Einstellungen-Editor. Nun Allgemeine Einstellungen wählen Sie auf der linken Seite und stellen Sie sicher, dass die Option Tab-Zeichen nicht markiert ist.

Syntax-Hervorhebung

Syntax-Hervorhebung ändern sich die Farben der verschiedenen Arten von Strukturen, mit einer Farbe für Keywords, eine andere Farbe für Variablennamen, ein drittes für Zeichenketten, und so weiter. Dies ist sehr hilfreich bei der Vermeidung von dummen Fehler, wie Sie schreiben. Zum Beispiel, wenn Sie ein Schlüsselwort falsch schreiben, wird es nicht in der Keyword-Farbe erscheinen. Um diese Funktion zu aktivieren, wählen Sie Einstellungen-Editor-Syntax-Hervorhebungen. Normalerweise Code :: Blocks aus der Erweiterung des Dateinamens die Sprache sagen. Wenn Sie eine Nicht-Standard-Dateierweiterung verwenden, sollten Sie es in die Liste hinzufügen, indem Sie Dateimasken auswählen. Darüber hinaus können Sie die Syntax-Hervorhebung Optionen dieses Fensters anpassen, um besser an Ihre Bedürfnisse anzupassen. Dies ist besonders wichtig, wenn Sie irgendeine Form von Sehstörungen, insbesondere jede Form von Farbenblindheit.

Quellcode-Formatierer

Dies könnte altmodisch, aber ein guter Programmierer ein wenig Stolz auf das Aussehen seines Codes zeigen sollte. Dies erfordert die Schaffung und stetige Einhaltung einer Codierungsstandard. Noch mehr als das, wenn es auf einem großen Team zu arbeiten, sollte jeder die gleiche Codierung Standard verwenden. Ansonsten sieht der Code chaotisch, als Module von einer Person geschrieben ein Look and Feel, während die von einem Mitspieler geschrieben, um einen anderen Blick haben - sehr unprofessionell.

Erzwingen Einhaltung einer Codierung Formatierungsstandard ist in Code :: Blocks einfach. Die Code-Editor wird neu formatiert Ihren Code jeden gewünschten Standard zu passen.

Der Code :: Blocks Quellcode-Formatierer wird anpassen nicht Variablennamen. Noch schlimmer ist, wird es nicht Ihre Programmlogik berühren. Also, wenn Sie crummy Code zu schreiben, nicht die Schuld es auf dem Code :: Blocks Editor.

Wählen Sie Einstellungen-Editor und wählen Sie dann Quelle Formatter aus der Liste, die ein Fenster zu bekommen scheint, wie in Abbildung sieht 1. Das Vorschaufenster zeigt Ihnen, was Ihre Entscheidungen in der Praxis aussehen wird. Dieses Beispiel folgt dem ANSI-Standard, aber Sie können unter vielen anderen gängigen Standards wählen, oder Sie können Benutzerdefiniert wählen und dann klicken Sie auf die Einrückungen und Formatierung Registerkarten, um Ihre eigenen Standard zu erstellen.

Abbildung 1: den Quellcode Forma einrichten können Sie einen Codierungsstil einheitlich helfen anzuwenden.
Abbildung 1: den Quellcode Forma einrichten können Sie einen Codierungsstil einheitlich helfen anzuwenden.

Sobald Sie ein Standard ausgewählt haben, wird der Editor versuchen, Sie zu überreden, diesen Standard verwenden. Wenn Sie zum Beispiel, geben Sie Wenn wahr) und drücken Sie die Eingabetaste, wird der Editor den Cursor an den eingekerbten Stelle unterhalb der Put ob. Wenn Sie dann eine offene Klammer eingeben, wird der Editor nach oben zurück, legen Sie die Klammer in Einklang mit der ich im ob, Sprung in die nächste Zeile und einrücken über.

Noch besser ist, wenn Sie mit der Codierung abgeschlossen haben, wenn Sie Plug-In-Source Code Formatter wählen (AStyle), wird der Editor gehen durch Ihr Modul und erneut den aktuellen Quellcode-Standard. Also, wenn Ihr Arbeitskollege mit seiner Programmierung nicht ganz so vorsichtig war, wie Sie waren, keine Sorgen zu machen - ein paar Mausklicks und es ist alles aufgeräumt.

Code Abkürzungen

Dies ist eine seltsame Wahl. Wenn Sie eine Menge Code (sprich: viel!), Code-Abkürzungen können Zeit sparen, vor allem wenn man nicht eine sehr gute Schreibkraft sind. Code Abkürzungen können Sie einige Codewort eingeben und dann drücken Sie Strg + J, und voila, wird der Code :: Blocks Editor die entsprechende vordefinierte Vorlage eingeben, die Sie dann ausfüllen.

Zum Beispiel gab zu, wenn Sie eingeben Klasse in dem eine Kopie der Code :: Blocks und trat dann Strg + J, Code :: Blocks würden Sie zuerst für den Namen Ihrer Klasse stellen und dann würde es in all dem, was in Abbildung 2 gezeigt, zu füllen.

Abbildung 2: Quellcode Abkürzung verwenden, können Sie eine Menge Zeit sparen, wenn Sie sich erinnern können, es zu benutzen!
Abbildung 2: Quellcode Abkürzung verwenden, können Sie eine Menge Zeit sparen, wenn Sie sich erinnern können, es zu benutzen!

Code :: Blocks kommt mit einer Reihe von Abkürzungen bereits definiert, aber Sie können über Einstellungen-Editor und wählen Sie dann die Abkürzungen Option auf der linken Seite des Fensters alle Abkürzungen Sie möchten hinzufügen.

Die gute Sache über Code Abkürzung ist, dass es eine Menge Tipparbeit sparen und setzt automatisch den Quellcode Formatierungsstandard, die Sie auswählen. Sehr schnell Schreibkraft (oder wäre das Keyboarder sein?) Nicht viel aus dieser Funktion, aber wenn Sie nicht alle zehn Finger verwenden, wenn Sie ein, oder sind sonst nur langsam auf der Tastatur, möchten Sie wahrscheinlich zu versuchen, diese mit Feature.

Auto-Vervollständigen

Code :: Blocks hat dieses coole Feature namens Auto-Vervollständigen. Nachdem Sie in einem gewissen Mindestanzahl von Buchstaben eingegeben haben (die Standardeinstellung ist vier, aber Sie ändern, dass), wenn Sie in Ihre Eingabe unterbrechen, wird Code :: Blocks für all die Dinge suchen, die mit diesen Buchstaben beginnen. Auf diese Weise kann, Code :: Blocks antizipieren, was es ist, dass Sie sagen wollen.

Zum Beispiel, die in der Budget5 Programm wird mit dem herunterladbaren Material enthalten aus Dummies.com, wenn Sie eingeben Acco und dann Pause nur eine halbe Sekunde (das ist nicht sehr lang!), dann ein Fenster öffnet sich, wie in Abbildung 3 gezeigt, dass die nur zwei Dinge bietet, die Code :: Blocks kennt in diesem Programm, das mit Acco beginnen: die Klasse Konto und die typedef AccountPtr. Da Sie gemeint Konto, drücken Sie die Eingabetaste Sie können einfach und es wird für mich füllen.

Abbildung 3: Code :: Blocks findet nur zwei Spiele für Acco in diesem Programm. Die erste ist, was ich
Abbildung 3: Code :: Blocks findet nur zwei Spiele für Acco in diesem Programm. Die erste ist, was ich suchte.

In diesem Beispiel erstellen möchten Sie einen Zeiger auf eine Konto namens pacc. Bei der Eingabe als nächstes pAcc-> und dann Pause, Code :: Blocks öffnet sich ein Fenster Auflistung der öffentlichen Mitglieder Konto wie in Figur 4 gezeigt.

Abbildung 4: ein Objekt, Code :: Blocks finden die öffentlichen Mitglieder zugänglich von diesem Objekt gegeben.
Abbildung 4: ein Objekt, Code :: Blocks finden die öffentlichen Mitglieder zugänglich von diesem Objekt gegeben.

Dies ist ein interessantes Feature, wenn sie Ihren eigenen Klassen verweisen. Mehr als alles andere, aus der Liste auswählen bedeutet, dass Sie geben nicht den Funktionsnamen falsch oder falsch geschrieben.

Diese Funktion wird wirklich interessant, wenn Sie ein Objekt eingeben, die in einer Bibliothek definiert ist. Wenn Sie zum Beispiel, geben Sie cout., Sie erhalten eine Liste der öffentlichen Mitglieder zur Verfügung, die erhalten cout Objekt. Dies kann sehr hilfreich sein, wenn Sie keine Dokumentation haben, oder Sie wissen einfach nicht, wo ich anfangen soll.

Aktivieren Sie alle Warnungen

Aktivieren Sie alle Warnungen ist ein Klacks. Fehler, die bei der Kompilierung sind viel einfacher zu finden Pop-up (duh!) Und beheben, als diejenigen, die Sie Jagd nach sich selbst zur Laufzeit zu gehen. Deshalb ist die C ++ Syntax so wählerisch ist - es will sicherstellen, dass Sie genau codiert haben, was Sie wollten, bevor es losgeht und erstellt eine ausführbare Datei, die etwas ganz anderes tut.

Es gibt ein paar Dinge, aber (ganz ein paar Dinge, tatsächlich), dass GNU C ++ Compiler beheben und weiter auf, ohne Kommentar, wenn Sie es wollen. Zum Beispiel ist es kein Fehler, eine Variable in einer Funktion zu definieren und sie dann nie verwenden. Oder eine Rückkehr in der Mitte einer Funktion zu setzen, so dass die Codezeilen nach der Rückkehr können nie ausgeführt werden. Dies sind keine Fehler, aber sie sehen mächtig seltsam an einen misstrauischen Compiler.

Der GNU-Compiler generiert eine Warnung, wenn es einem dieser beiden Fälle oder irgendwelchen von Dutzenden von anderen verdächtigen Konstrukte im Code sieht. Sie sollten jede Warnung zu machen gehen Sie sicher, dass Sie verstehen, was der Compiler und warum beschwert. Versuchen Sie, das Problem zu beheben, wenn Sie aber auch verstehen können, wenn Sie nicht wählen, es zu beheben.

Warnungen werden viele Fehler aufdecken, die im Begriff sind, Fehler in Ihrer Programme zu werden.

Erstellen eines neuen Build-Ziel

Der Code :: Blocks-Umgebung können Sie mehr als ein Build-Ziel zu erstellen. Ein Build-Target ermöglicht es Ihnen, eine separate ausführbare Datei mit einzigartigen Build-Einstellungen zu erstellen. Zum Beispiel würden Sie auf jeden Fall Symbolinformationen in der ausführbaren Datei, die Sie für Debug verwenden, aber nicht in der einen, den Sie beabsichtigen, an Kunden zu versenden (siehe unten für weitere Informationen) aufzunehmen.

Sie können am einfachsten ein Debug-Build-Target und eine Release-Build-Ziel zu erstellen, wenn Sie das Projekt erstellen - lassen Sie den Assistenten für Sie die ganze Arbeit machen. Aber es kommt sehr oft vor, dass nach Wochen der Arbeit an und ein Projekt debuggen, Sie gehen, um es zu lösen nur um festzustellen, dass kein Releasebuild Ziel gibt. Keine Sorge, Sie können immer einen neuen Build-Ziel auf eigene erstellen.

Um einen neuen Build-Ziel zu erstellen, wählen Sie Projekt-Eigenschaften und anschließend auf die Build-Registerkarte Ziele auszuwählen. Sie werden etwas sehen, das wie in Abbildung sieht 5, die die Budget5 Programm mit einem einzigen Debug Build-Ziel zeigt.

Abbildung 5: Eines der Projekteigenschaften ist die Liste der Build-Ziele.
Abbildung 5: Eines der Projekteigenschaften ist die Liste der Build-Ziele.

Verwenden Sie die folgenden Schritte, um ein Releasebuild Ziel zu erstellen:

  1. Wählen Sie das Debug-Ziel und klicken Sie auf Duplizieren.

  2. Geben Sie den Namen des neuen Build-Ziel, Mitteilung.

  3. Ändern Sie den Namen der Ausgabedatei zu bin Release Budget5.exe und die Objekte Ausgabeverzeichnis obj Release .

  4. Klicken Sie auf Build-Optionen, um unabhängig von Build-Optionen, die Sie für diese spezielle Ziel möchten und klicken Sie auf OK.

    Sie werden auf jeden Fall Symbolinformationen zu auszuschalten und Optimierung möchten.

  5. Klicken Sie auf OK, um die neue Build-Ziel zu speichern.

So erstellen Sie einen bestimmten Build-Ziel, wählen Sie Errichten-Select Target, und dann aus den verfügbaren Ziele wählen. Dieser leitet Code :: Blocks als auf die ausführbaren Sie erstellen möchten, wenn Sie Build auswählen.

Projekt - ermöglichen Optimierungen

Man könnte denken, dass jede Zeile von C ++ Code, um einen Satz von Maschinenbefehlen, ohne Bezug auf die Codezeilen um ihn herum erzeugt, und in nicht optimierten Modus hätten Sie recht. Der Optimierer in den GNU-Compiler gebaut kann, indem man über mehrere Zeilen Code ein effizienteres Programm von Ihrem C ++ Quelle erzeugen.

Betrachten Sie das folgende trivial und vollständig aus (aber klug) Beispiel:

// I ++ - MOV EAX, i [BP] INC EAXMOV i [BP], EAX // fn (i) MOV EAX, i [BP] PUSH EAXCALL FN

Hier haben Sie die Zeile i ++ wurde in die drei Linien von Maschinencode umgewandelt, die folgen:

  1. Legen Sie den Wert ich in das EAX-Register.

  2. Erhöhen Sie die EAX-Register.

  3. Lagern Sie den erhöhten Wert wieder in ich.

    Die nächste Zeile wandelt den Anruf fn (i) in die folgenden.

  4. Legen Sie den Wert ich in das EAX-Register.

  5. Schieben Sie den Wert von EAX auf den Stapel.

  6. Machen Sie den Anruf.

Beachten Sie, dass Schritt 4 eigentlich nicht notwendig ist. Es gibt keine Notwendigkeit, den Wert zu laden ich in das EAX-Register, da der Wert bereits dort von den Schritten 1, 2 und 3. Auch ein mittelmäßiger Optimierer diese Tatsache und nicht erzeugen, um die zweite bemerken würde, MOV EAX, i [BP].

Dies ist nicht viel von einem Einsparungen, aber dieses Beispiel ist leicht zu verstehen, auch wenn es nicht so eine große Verbesserung ist. Sie müssten eine echte Senkrechtstarter in Assemblersprache zu sein die meisten der Optimierungen, die die GNU Compiler macht zu verstehen.

Sie können Optimierungen für einen bestimmten Build aktivieren, indem Sie Optionen Projekt bauen, dann ist die Veröffentlichung auf der linken Seite bauen die Auswahl und einer der Optimierungsoptionen auswählen.

Technisch gibt es verschiedene Optimierungsmöglichkeiten, da der Optimierer eine Menge Zeit in Anspruch nehmen kann. Wenn Sie ein sehr großes Projekt haben, gibt es nicht viel Sinn, viel Zeit bei den Ausgaben ein Modul zu optimieren, die nicht sehr häufig ausgeführt werden. Für kleine bis mittlere Projekte, ermöglichen nur vollständige Optimierung - Sie werden die paar Sekunden nicht merken, es zu kompilieren dauert.

Sie können diese Option aktivieren, für alle jedoch Settings-Compiler durch Auswählen, wählen Sie dann das Register Compiler und Auswählen einer der Optimierungs Hülle- baut, ist dies nicht so eine gute Idee. Nicht-Optimierung in der Debug-Version von dem Projekt zu aktivieren, wenn Sie sich mit den Debugger planen. Die Änderungen an dem Code, den das Optimierungsprogramm führt das Programm zu machen, erscheint in einem halb Irrfahrt zu springen um, wenn Sie versuchen, durch sie zu treten.

Project - Deaktivieren Sie die Debugger-Symbole

Symbol Informationen in der ausführbaren Datei ausschließlich für den Gebrauch des Debuggers enthalten. Diese Informationen sollten nicht in der Version enthalten sein, die Sie Benutzern versenden: Es erhöht die Größe der ausführbaren Datei unnötig und, schlimmer noch, es löst gefährliche Informationen an Hacker sollte man eine Schwachstelle in Ihrem Programm zu finden versuchen.

Um Debug-Informationen in den Release-Build-Ziel zu deaktivieren, wählen Optionen Projekt-Build und wählen Sie dann die Release-Ziel auf der linken Seite. Nun stellen Sie sicher, dass die Produce-Debugging-Symbole [-g] Option ist für den Release-Ziel angeklickt wird. (Jetzt ist eine gute Zeit, um sicherzustellen, dass die gleiche Option für die Debug-Build-Target angeklickt werden.)

Projekt - eines Programms Argumente Einstellung

Einige Programme sollen mit Kommandozeilenargumenten ausgeführt werden. Code :: Blocks bietet die folgenden Mechanismus für die Bereitstellung Befehlszeilenargumente, wenn aus dem Code, wie der Ausführung eines Programms :: Umwelt-Blöcke:

  1. Wählen Sie Projekt-Set Programs 'Argumente.

  2. Wählen Sie das Build-Ziel im oberen Fenster.

  3. Geben Sie, was Sie in der Programmargumente Fenster mögen.

  4. Wählen Sie OK, um das Fenster zu schließen.

Wenn Sie auf Start oder Ausführen eingeben, Code :: Blocks werden diese Argumente zu Ihrem Programm liefern.

Menü