Wat is het CXX-bestandsformaat?
Een .cxx-bestand is een C++ broncodebestand - platte tekst die compileerbare C++-taalbronnen bevat. Het is een van de verschillende erkende bronextensies naast .cpp, .cc en .c++, die allemaal identiek worden behandeld door compilers.
Het bestand bevat preprocessor-directives (#include, #define, #ifdef), klasse- en functiedefinities, sjabloonspecialisaties en (in een uitvoerbaar programma) een main()-ingangspunt. De codering is platte ASCII of UTF-8; een optionele UTF-8 BOM (EF BB BF) kan aan het begin verschijnen, maar is niet vereist.
De naam .cxx is een spellingsconventie: de letter x vervangt tweemaal de +, wat een ASCII-veilig alternatief oplevert voor .c++. Het is de voorkeursextensie in bepaalde wetenschappelijke en visualisatie-codebases - met name VTK, ITK en sommige CMake-zware projecten - en was gebruikelijk in vroege Unix C++ toolchains.
Alle grote compilers herkennen .cxx standaard:
- GCC (
g++) en Clang behandelen het als C++ zonder extra vlaggen - MSVC herkent
.cxxals C++ broncode - CMake, GNU Make en Meson detecteren het automatisch
Het bestand slaat geen versie-metadata op; de doel-C++-standaard (C++98 tot en met C++23) wordt gespecificeerd als een compilervlag zoals --std=c++17. De gecompileerde uitvoer is een objectbestand (.o of .obj) dat wordt gekoppeld aan een uitvoerbaar bestand of een bibliotheek.
Beveiliging & veiligheid
RISICO: LOWEen .cxx-bestand is platte tekst en kan niet uit zichzelf worden uitgevoerd - openen in een editor is veilig. Risico ontstaat pas wanneer u onbekende C++-code COMPILEERT en UITVOERT: broncode van niet-vertrouwde oorsprong kan alles doen wat een programma kan zodra het is gebouwd. Lees de code voordat u deze compileert; bouw niet-vertrouwde code in een sandbox/VM.
Formaatdetails
in een notendopProgramma's die CXX-bestanden openen
Technische details
diepe specificaties| Bestandscodering | Platte tekst; ASCII of UTF-8 (optionele UTF-8 BOM op offset 0) |
| Binaire signatuur | Geen - geïdentificeerd door bestandsextensie en inhoud, niet door magic bytes |
| MIME-type | text/x-c++src (alt: text/x-c++, text/plain) |
| Typische bestandsgrootte | Een paar KB tot tientallen KB per bronbestand |
| Doel-C++-standaard | C++98 tot en met C++23; gespecificeerd tijdens compilatie via vlag (bijv. --std=c++17) |
| Betekenis extensie | Alfanumerieke spelling van C++: x vervangt tweemaal de +, wat een ASCII-veilig alternatief voor .c++ oplevert |
| Gecompileerde uitvoer | Objectbestand (.o of .obj); gekoppeld aan een uitvoerbaar bestand of gedeelde bibliotheek |
| Compiler-ondersteuning | GCC (g++), Clang en MSVC herkennen .cxx standaard als C++ broncode zonder extra vlaggen |
| Build-systeem ondersteuning | CMake, GNU Make en Meson detecteren .cxx automatisch als C++ zonder extra configuratie |
| Typische bestandsinhoud | #include-directives, klasse/struct-definities, functierompjes, sjabloonspecialisaties, main() ingangspunt |
| Commentaar-syntaxis | Regelcommentaar (//) en blokcommentaar (/* */) |
| Header-tegenhanger | .hxx- of .hpp-bestanden bevatten declaraties; .cxx-bestanden bevatten de bijbehorende definities |
| Gerelateerde bronextensies | .cpp (Windows/cross-platform standaard), .cc (GNU/Google-stijl), .c++ (zeldzaam), .C (historisch Unix) |
| Uitgebracht | C++ created 1979-1985 (Bjarne Stroustrup, Bell Labs); .cxx is a long-standing extension convention |
| Laatste versie | ISO/IEC 14882:2024 (C++23); C++26 in progress |
| Open standaard | Ja · royaltyvrij |
| Specificatie | isocpp.org |
CXX conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over CXX-bestanden.