Skip to content

Latest commit

 

History

History
40 lines (25 loc) · 1.61 KB

File metadata and controls

40 lines (25 loc) · 1.61 KB

C++ Standard Attribute

Zurück


Quellcode


Überblick

Im C++ Standard können Attribute in doppelten eckigen Klammern eingesetzt werden. Die bekanntesten Attribute sind in der folgenden Tabelle aufgeführt:

Name Beschreibung
[[noreturn]] Zeigt an, dass die Funktion nicht zurückkehrt.
[[deprecated]] Zeigt an, dass die Verwendung des mit diesem Attribut deklarierten Namens zulässig ist, aber aus irgendeinem Grund davon abgeraten wird, dieses Sprachfeature einzusetzen.
[[fallthrough]] Weist darauf hin, dass das Durchfallen des vorherigen case-Labels beabsichtigt ist und nicht von einem Compiler diagnostiziert werden sollte (so genanntes „fall-through”).
[[nodiscard]] Der Compiler gibt eine Warnung aus, wenn der Rückgabewert ignoriert wird.
[[maybe_unused]] Unterdrückt eine Compiler-Warnung, wenn eine Variable/Objekt nicht verwendet wird.

Tabelle 1: Einige C++ Standard Attribute.

Daneben gibt es noch weitere, recht spezielle Attribute, wie zum Beispiel carries_dependency, likely, unlikely oder no_unique_address.

Hinweis: Das Attribut deprecated erzeugt mit dem Visual C++–Compiler einen Fehler an Stelle einer Warnung. Dies kann man abstellen, eine Beschreibung der Visual C++–Compilereinstellungen diesbezüglich findet man hier:

deprecated results in error instead of warning in Visual Studio.
(abgerufen am 06.12.2022).


Zurück