Namespaces
Variants

std::meta::offset_of

Von de.cppreference.net
< cpp | meta
 
 
 
Reflexionsbibliothek
 
Reflexionstypen und -abfragen
Reflexionsabfragen
Reflexions-Layout-Abfragen
Typeigenschaften
Typeigenschaftsabfragen
 
Definiert in Header <meta>
consteval std::meta::member_offset offset_of( std::meta::info r );
(seit C++26)

Gibt den Offset des nicht-statischen Datenelements oder der direkten Basisklasse, dargestellt durch r, relativ zu seiner einschließenden Klasse std::meta::parent_of(r) zurück.

Parameter

r - eine Reflexion eines nicht-statischen Datenelements oder einer direkten Basisklassenbeziehung

Rückgabewert

Sei V der Offset in Bits vom Beginn eines vollständigen Objekts des durch std::meta::parent_of(r) dargestellten Typs zum Unterobjekt, das mit dem verbunden ist, was r darstellt. Gibt std::meta::member_offset{V % CHAR_BIT, V % CHAR_BIT} zurück.

Ausnahmen

Wirft std::meta::exception, es sei denn, r stellt eines der folgenden dar:

  • nicht-statisches Datenelement
  • unbenanntes Bitfeld
  • direkte Basisklassenbeziehung, für die entweder die Basisklasse keine virtuelle Basisklasse ist oder die abgeleitete Klasse keine abstrakte Klasse ist

Beispiel

Siehe auch

Byte-Offset vom Beginn eines Standard-Layout-Typs zum angegebenen Mitglied
(Funktionsmakro)