Namespaces
Variants

Comments

From cppreference.net
C++ language
General topics
Flow control
Conditional execution statements
Iteration statements (loops)
Jump statements
Functions
Function declaration
Lambda function expression
inline specifier
Dynamic exception specifications ( until C++17* )
noexcept specifier (C++11)
Exceptions
Namespaces
Types
Specifiers
constexpr (C++11)
consteval (C++20)
constinit (C++20)
Storage duration specifiers
Initialization
Expressions
Alternative representations
Literals
Boolean - Integer - Floating-point
Character - String - nullptr (C++11)
User-defined (C++11)
Utilities
Attributes (C++11)
Types
typedef declaration
Type alias declaration (C++11)
Casts
Memory allocation
Classes
Class-specific function properties
Special member functions
Templates
Miscellaneous

Kommentare dienen als eine Art Dokumentation im Code. Wenn sie in ein Programm eingefügt werden, werden sie vom Compiler effektiv ignoriert; sie sind ausschließlich als Notizen für die Menschen gedacht, die den Quellcode lesen. Obwohl spezifische Dokumentation nicht Teil des C++-Standards ist, existieren mehrere Hilfsprogramme, die Kommentare mit verschiedenen Dokumentationsformaten verarbeiten.

Inhaltsverzeichnis

Syntax

/* Kommentar */ (1)
// Kommentar (2)
1) Oft als "C-Stil" oder "mehrzeilige" Kommentare bekannt.
2) Oft als "C++-Stil"- oder "Einzeilen"-Kommentare bekannt.

Alle Kommentare werden aus dem Programm entfernt in translation phase 3 durch Ersetzen jedes Kommentars mit einem einzelnen Leerzeichen.

C-Stil

C-style Kommentare werden normalerweise verwendet, um große Textblöcke zu kommentieren, können jedoch auch für einzelne Zeilen verwendet werden. Um einen C-style Kommentar einzufügen, umgeben Sie den Text einfach mit /* und */ ; dies führt dazu, dass der Inhalt des Kommentars vom Compiler ignoriert wird. Obwohl es nicht Teil des C++ Standards ist, /** und */ werden oft verwendet, um Dokumentationsblöcke zu kennzeichnen; dies ist legal, da der zweite Asterisk einfach als Teil des Kommentars behandelt wird. C-style Kommentare können nicht geschachtelt werden.

C++-Stil

C++-style Kommentare werden normalerweise verwendet, um einzelne Zeilen zu kommentieren, jedoch können mehrere C++-style Kommentare zusammengefügt werden, um mehrzeilige Kommentare zu bilden. C++-style Kommentare weisen den Compiler an, alle Inhalte zwischen // und einem Zeilenumbruch zu ignorieren.

Hinweise

Da Kommentare entfernt werden bevor die Präprozessor-Phase beginnt, kann ein Makro nicht zur Bildung eines Kommentars verwendet werden und ein nicht abgeschlossener C-Stil-Kommentar greift nicht aus einer #include-Datei über.

Neben dem Auskommentieren sind andere Mechanismen zur Quellcode-Ausschließung

#if 0
    std::cout << "dies wird weder ausgeführt noch kompiliert\n";
#endif

und

if (false)
{
    std::cout << "dies wird nicht ausgeführt\n";
}

Beispiel

#include <iostream>
/* C-style comments can contain
multiple lines */
/* or just one */
/**************
 *  you can insert any *, but
 *  you can't make comments nested
 */
// C++-style comments can comment one line
// or, they can
// be strung together
int main()
{
    // comments are removed before preprocessing,
    // so ABC is "1", not "1//2134", and "1 hello world"
    // will be printed
#define ABC 1//2134
    std::cout << ABC << " hello world\n";
    // The below code won't be run
    // return 1;
    // The below code will be run
    return 0;
}

Ausgabe:

1 hello world

Siehe auch

C-Dokumentation für Kommentar