Namespaces
Variants

std::meta::constant_of

Von de.cppreference.net
< cpp | meta
 
 
 
Reflexionsbibliothek
 
Reflexionstypen und -abfragen
Reflexionsabfragen
Reflexionslayoutabfragen
Typeigenschaften
Typeigenschaftsabfragen
 
Definiert in Header <meta>
constexpr std::meta::info constant_of( std::meta::info r );
(seit C++26)

Gibt eine Reflexion des (konstanten) Werts dessen zurück, was r darstellt.

Formell:

  • Wenn r eine Annotation darstellt, wird ihre zugrundeliegende Konstante zurückgegeben (std::meta::reflect_constant(expr) wobei expr der konstante Ausdruck der Annotation ist).
  • Andernfalls sei R ein konstanter Ausdruck gleich r:
  • Wenn r eine Variable oder ein Objekt vom Array-Typ darstellt, wird std::meta::reflect_constant_array([:R:]) zurückgegeben.
  • Andernfalls, wenn r eine Funktion darstellt, wird std::meta::reflect_function([:R:]) zurückgegeben.
  • Andernfalls wird std::meta::reflect_constant([:R:]) zurückgegeben.

Parameter

r - ein Reflexionswert

Rückgabewert

Eine Reflexion des Werts dessen, was r darstellt.

Ausnahmen

Wirft std::meta::exception, es sei denn, entweder r stellt eine Annotation dar oder [:R:] ist ein gültiger Splice-Ausdruck.

Anmerkungen

Das Ergebnis stellt eine Funktion dar, wenn r eine Funktion darstellt, ein Schablonenparameterobjekt, wenn r eine Variable oder ein Objekt vom Array- oder Klassentyp darstellt, oder einen (skalaren) Wert, wenn r eine Variable oder ein Objekt vom skalaren Typ darstellt.

Beispiel

Siehe auch

gibt eine Reflexion zurück, die einen Wert oder ein Schablonenparameterobjekt darstellt, geeignet für die Verwendung als konstantes Schablonenargument
(Funktionsschablone)
stuft ein Kompilierzeit-Array in statische Speicherung hoch und gibt eine Reflexion zurück, die das statische Array darstellt
(Funktionsschablone)
gibt eine Reflexion zurück, die eine Funktion darstellt, geeignet für die Verwendung als konstantes Schablonenargument
(Funktionsschablone)