Namespaces
Variants

typeof operators (since C23)

From cppreference.net

Bestimmt den Typ eines Objekts.

Inhaltsverzeichnis

Syntax

typeof( Typ ) (1)
typeof( Ausdruck ) (2)
typeof_unqual( Typ ) (3)
typeof_unqual( Ausdruck ) (4)

Erklärung

1) erzeugt den Typnamen mit allen ausgewerteten geschachtelten typeof-Spezifizierern
2) liefert den Typnamen, der den Typ seines Operanden repräsentiert. Es werden keine impliziten Konvertierungen auf den Ausdruck angewendet.
3,4) dasselbe wie (1) und (2) jedoch ohne Qualifizierer

Hinweise

typeof und typeof_unqual werden gemeinsam als typeof-Operatoren bezeichnet. Die typeof -Operatoren können nicht auf Bitfeld-Member angewendet werden. Wenn der Typ des Operanden ein variabel modifizierter Typ ist, wird der Operand ausgewertet; andernfalls wird der Operand nicht ausgewertet. Das Ergebnis des typeof_unqual -Operators ist der nicht-atomare unqualifizierte Typ, der sich aus dem typeof -Operator ergeben würde. Der typeof -Operator bewahrt alle Qualifizierer.

Beispiel

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 6.7.2.5 The typeof specifiers (p: 115-118)

Siehe auch

C++ Dokumentation für decltype