Frage

Das letzte Mal, dass ich C ++ stark frequentierte war vor Jahren, und es wurde streng auf der Windows-Plattform durchgeführt. Insbesondere habe ich Microsoft Visual Studio als mein IDE und einige Gewohnheitsmuster entwickelt Microsoft C ++ Version zu verwenden. Zum Beispiel habe ich void main () anstelle der Standard- int main () .

Nun, ich nehme eine Klasse, wo es erforderlich ist, Programme zu entwickeln, ANSI C ++ kompatibel und der Code wird kompiliert g ++ verwenden. Ich habe schnell gelernt, dass System ( "PAUSE") funktioniert nicht in g ++ und ist wahrscheinlich ein Microsoft Sache.

Wer weiß von jedem guten Ressourcen (Websites, Tutorials, Bücher), wo ich lernen kann, was mehr besser ANSI C ++ Beschwerde zu sein?

Danke.

War es hilfreich?

Lösung

Ich würde empfehlen, diese beiden:

  • comp.lang.c ++ Usenet-Newsgroup. Wenn Sie halten einen guten Usenet-Dienstleister zu bekommen, und einen News-Reader verwenden, sollten Sie in der Lage sein, von dem Spam loszuwerden. Ich benutze eternal-september.org , und wie es eine ganze Menge.
  • Lesen Sie die C ++ FAQ . Es hat eine Menge Information.

Zugegeben, sie beide sind nicht sehr groß, wenn Sie ein Tutorial Einführung in C ++ wollen, aber sieht aus wie Sie bereits wissen, C ++, und Notwendigkeit, mehr zu lernen und richtig schlechte Gewohnheiten. Aus meiner persönlichen Erfahrung, sind die beiden oben genannten dabei genau sehr nützlich, dass.

Über comp.lang.c++, stellen Sie sicher, vollständig Sie ihre FAQ lesen und lauert dort eine Weile vor der Veröffentlichung. Das gleiche gilt natürlich auch für Stackoverflow, obwohl lauern hier nicht notwendig sein.

Mit g++, kompilieren Sie Ihre Programme mit g++ -ansi -pedantic -Wall -Wextra -Weffc++, und stellen Sie sicher, dass Sie alle Warnungen verstehen. Ich benutze:

g++ -Wextra -Wall -Weffc++ -ansi -pedantic -Woverloaded-virtual \
-Wcast-align -Wpointer-arith

Andere Tipps

Wenn Sie g ++ verwenden, kompiliert dann mit der -pedantic und -std = c ++ 98 Flaggen. Der einzige Standard für die ANSI-C ++ ist wirklich das ISO-Norm Dokument, das nicht zu einem Anfänger zu empfehlen. Sie irren sich über System ( "PAUSE"), übrigens - system () ist Teil der ANSI C ++ -. Es ist Parameter nicht standardisiert ist, jedoch

Die meisten C ++ Bücher werden plattformunabhängig sein (natürlich, wenn sie speziell für Visual C ++ vorgenommen werden). Hier sind einige gute Bücher die von den Profis auf empfohlen werden ## C ++

GCC einen guten Job, Ihnen zu sagen tun wird, wenn der Code nicht ISO C ++ kompatibel ist (nicht, dass es ein ISO-Standard ist, nicht ein ANSI-Standard). Stellen Sie die Warnung Optionen Werror -Wall und einfach alle Warnungen beheben; Sie bald raus aus nicht-konformen Gewohnheiten und ger immer weniger Warnungen.

Es gibt viele gute Tutorials gcc, hat eine Flagge, die sicher den Code machen ist ANSI C konform Auch gcc -ansi -Wall -fsyntax-only -pedantic

* Wall - turn on all errors
* ansi - use strict ANSI C specification
* fsyntax-only - only checks syntax
* pedantic - reject violations

Per, Kommentare Zusätzlich können Sie verwenden     * -Wextra auf ein paar zusätzliche Warnungen zu drehen,

update Dank für die Aktualisierung auf Kapitalisierung., Und erwähnt -pedantic

Viele gcc Fans.

Die wichtigen Fahnen mit unter Visual Studio kompilieren so streng wie möglich sein, sind:

cl /Za /W4 ...rest of command...

/ Za deaktiviert Microsoft-spezifische Erweiterungen und / W4 ist die höchste Warnstufe (außer / Mauer, die über lächerliche Dinge beschwert).

Ich würde auch empfehlen Ihnen, eine moderne Version von Visual Studio verwenden -. Alte Versionen (VC6) waren lächerlich mit nicht-konformer und Microsoft offiziell behauptet, sie nie an dieser Stelle existiert

Ich würde empfehlen.

Websites:

Bücher:

  • effektiv C ++
  • effektive stl
  • modern c ++ Design
  • Metaprogrammierung

sprechen / hören Experten und verstehen, was sie zu sagen haben und warum.

C ++ Primer (4. Ausgabe) erscheint in diesen Tagen die beste Anfänger Buch, da es einen modernen Ansatz nimmt und lehrt alle wichtigen Teile der Sprache. Beschleunigte C ++ ist ein weiteres Buch oft von Profis empfohlen, und es dient als eine gute Einführung, aber ich würde es nicht empfehlen den Kauf mehr, weil C ++ Primer gut ersetzt sie und deckt die Sprache besser.

. Hinweis: C ++ Primer Plus (die ein eher schlechtes Buch ist) nichts mit C ++ Primer zu tun

Stroustrup Die Programmiersprache C ++ muss immer erwähnt werden, natürlich, weil er durch den Vater der Sprache geschrieben ist. Viele Menschen finden es zu erleuchten, aber ich persönlich würde es nicht für das Erlernen der Sprache empfehlen.

Alle Bücher habe ich erwähnt, beschreiben nur die ISO-Norm ohne Nicht-Standard-Erweiterungen. Die Programme in diesen Büchern sollten funktionieren mit jedem C ++ Compiler.

ich wie ein Besuch bei www.cplusplus.com, wenn ich einen Zweifel haben, speziell über die Standard C ++ Bibliothek.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top