c++ - example - filesystem extension




C++ Code Dateiendung?.cc vs.cpp (11)

Ich habe C ++ - Code sowohl als .cc und .cpp Dateien gespeichert gesehen. Gibt es einen Unterschied zwischen den beiden?

Der Google Style Guide scheint auf .cc zu .cc , bietet aber keine Erklärung.

Ich beschäftige mich hauptsächlich mit Programmen auf Linux-Systemen.


Am Ende des Tages ist es egal, weil C ++ - Compiler mit den Dateien in beiden Formaten umgehen können. Wenn es ein echtes Problem in Ihrem Team ist, werfen Sie eine Münze und machen Sie mit der eigentlichen Arbeit weiter.


Andere verwendete Dateiendungen sind .cxx und .cxx (Großbuchstabe C). Ich glaube, Bjarne Stroustrup hat ursprünglich .C benutzt. .cpp ist der Name des C-Präprozessors, daher ist es bedauerlich, dass es auch für C ++ verwendet wurde.



Die andere Option ist .cxx wobei das x ein Plus von 45 ° sein soll.

Windows, Mac und Linux unterstützen alle .c++ also sollten wir nur das verwenden.


GNU GCC erkennt alle folgenden C ++ - Dateien und verwendet C ++ - Kompilierung, unabhängig davon, ob Sie sie über gcc oder g ++ aufrufen: .C , .cc , .cpp , .CPP , .c++ , .cp oder .cxx .

Beachten Sie, dass der .C - Fall in GCC von Bedeutung ist, .c ist eine C-Datei, während .C eine C ++ - Datei ist (wenn Sie den Compiler entscheiden lassen, was er kompiliert).

GCC unterstützt auch andere Suffixe, um eine spezielle Behandlung anzuzeigen, zum Beispiel wird eine .ii Datei als C ++ kompiliert, aber nicht vorverarbeitet (für separat vorverarbeiteten Code gedacht). Alle erkannten Suffixe sind unter gcc.gnu.org detailliert gcc.gnu.org


Ich habe .C und .h für die Quelle bzw. den Header verwendet. Eine nette Sache mit dieser Wahl ist, dass es in der Befehlszeile einfach zu verwenden *.[Ch] , um alle Code-Dateien auszuwählen. Die Verwendung von .C könnte ein Problem sein bei Dateisystemen ohne Groß- / Kleinschreibung, aber wenn Sie foo.c und foo.C im gleichen Verzeichnis haben, verdienen Sie, was Sie sowieso bekommen :)


Ich persönlich habe .cc nie in irgendeinem Projekt gesehen, an dem ich gearbeitet habe, aber in jeder Hinsicht ist es dem Compiler egal.

Wer sich darum kümmert, ist, dass die Entwickler an Ihrer Quelle arbeiten, also ist meine Faustregel, mit dem zu gehen, womit sich Ihr Team wohl fühlt. Wenn Ihr "Team" die Open-Source-Community ist, gehen Sie mit etwas sehr .cpp , von dem .cpp der Favorit zu sein scheint.


Mehrere Leute, die sagen, .cc steht für nichts? Es könnte. C ++ begann das Leben als "C mit Klassen".

True, dass .cc und .cpp auch Befehlsnamen auf den meisten Unix-Systemen sind (c Compiler und c Präprozessor jeweils).

Ich verwende ausschließlich .cpp , aber ich habe mit Windows angefangen. .cc ist eher eine Unix-Konvention, obwohl ich es selbst dort immer weniger sehe. GNU make hat Regeln für .cpp , also ist es wahrscheinlich bevorzugt, es funktioniert standardmäßig sowohl auf Windows als auch auf allem anderen. Auf der anderen Seite verwendet moderne C ++ keine Erweiterung für Header, ich mag das wirklich nicht. Alle meine Projekte verwenden .h für Header-Dateien, und sie unterstützen sowohl C als auch C ++ so weit wie möglich über extern "C" und testen __cplusplus .


Wie bei den meisten Stilkonventionen gibt es nur zwei Dinge, die wichtig sind:

  1. Sei konsistent in dem, was du verwendest, wo immer es möglich ist.
  2. Entwerfen Sie nichts, was von einer bestimmten Wahl abhängt.

Diese scheinen zu widersprechen, aber sie haben jeweils einen Wert für ihre eigenen Gründe.


cpp = c plus plus und es ist also meine bevorzugte, wofür steht cc oder cxx?


.cpp ist die empfohlene Erweiterung für C ++, soweit ich weiß. Manche Leute empfehlen sogar, .hpp für C ++ - Header zu verwenden, nur um von C zu unterscheiden.

Obwohl es dem Compiler egal ist, was Sie tun, ist es persönliche Vorliebe.





filenames