Namespaces
Variants

Punctuation

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

Dies sind die Interpunktionssymbole in C++. Die Bedeutung jedes Symbols wird auf den verlinkten Seiten detailliert beschrieben.

Inhaltsverzeichnis

Präprozessor-Operatoren

Präprozessoroperatoren werden von Präprozessoren erkannt.

# (einschließlich % : )

## (einschließlich % : % : )

Einzelzeichen-Operatoren und Interpunktionszeichen

{ und } (einschließlich < % und % > )

(seit C++11)
(seit C++20)

[ und ] (einschließlich < : und : > )

(seit C++11)
(seit C++17)
(seit C++26)

( und )

(seit C++11)
(seit C++11)
(seit C++17)
(seit C++20)
(seit C++11)
  • In einem Handler , begrenzen Sie die Parameterdeklaration.
  • In einer funktionsähnlichen Makrodefinition , begrenzen Sie die Makroparameter.
  • In einem funktionsähnlichen Makroaufruf , begrenzen Sie die Makroargumente oder verhindern Sie, dass Kommas als Argumenttrenner interpretiert werden.
  • Teil eines defined , __has_include (since C++17) , __has_cpp_attribute (since C++20) Präprozessoroperators.
  • In einer static_assert -Deklaration die Operanden abgrenzen.
  • Die Operanden der folgenden Spezifizierer abgrenzen:
(seit C++20)
  • In einem Attribut die Attributargumente abgrenzen.
(seit C++11)
(seit C++14)
(seit C++17)
  • Teil der __VA_OPT__ -Ersetzung in einer variadischen Makrodefinition.
(seit C++20)

;

  • Das Ende anzeigen
(seit C++20)

:

(seit C++11)
(seit C++17)
(seit C++20)

?

.

(since C++20)

~ (einschließlich compl )

! (einschließlich not )

(seit C++23)

+

-

*

(seit C++17)

/

%

^ (einschließlich xor )

& (einschließlich bitand )

(seit C++11)

| (einschließlich bitor )

=

(seit C++11)
(seit C++20)

<

(seit C++20)
(seit C++17)
(seit C++20)

>

(seit C++20)
(seit C++17)
(seit C++20)

,

(seit C++11)
(seit C++17)
(seit C++23)
(since C++11)

Mehrzeichen-Operatoren und Interpunktionszeichen

...

  • In der Parameterliste eines Funktionsdeklarators oder Lambda-Ausdrucks (seit C++11) oder benutzerdefinierten Ableitungsleitfadens (seit C++17) , kennzeichnet es eine variadische Funktion .
  • In einem Handler , kennzeichnet es einen Catch-all-Handler.
(since C++11)
(since C++26)

::

  • Scope-Auflösungsoperator in
  • In einem Attribut , den Attributbereich angeben.
(since C++11)
(since C++17)

. *

- >

(since C++11)
(since C++17)
(since C++20)

- > *

+ =

- =

* =

/ =

% =

^ = (einschließlich xor_eq )

& = (einschließlich and_eq )

| = (einschließlich or_eq )

==

! = (einschließlich not_eq )

<=

>=

<=>

(seit C++20)

&& (einschließlich and )

(seit C++11)

|| (einschließlich or )

<<

>>

<<=

>>=

++

--

Referenzen

  • C++23-Standard (ISO/IEC 14882:2024):
  • 5.12 Operatoren und Interpunktion [lex.operators]
  • C++20-Standard (ISO/IEC 14882:2020):
  • 5.12 Operatoren und Interpunktionszeichen [lex.operators]
  • C++17-Standard (ISO/IEC 14882:2017):
  • 5.12 Operatoren und Interpunktionszeichen [lex.operators]
  • C++14-Standard (ISO/IEC 14882:2014):
  • 2.13 Operatoren und Interpunktion [lex.operators]
  • C++11-Standard (ISO/IEC 14882:2011):
  • 2.13 Operatoren und Interpunktion [lex.operators]
  • C++03-Standard (ISO/IEC 14882:2003):
  • 2.12 Operatoren und Interpunktionszeichen [lex.operators]
  • C++98-Standard (ISO/IEC 14882:1998):
  • 2.12 Operatoren und Interpunktionszeichen [lex.operators]

Siehe auch

Alternative representations alternative Schreibweisen für bestimmte Operatoren
C documentation für Punctuation