Namespaces
Variants

C++ named requirements: StandardLayoutType (since C++11)

From cppreference.net
C++ named requirements

Gibt an, dass ein Typ ein Standard-Layout-Typ ist. Standard-Layout-Typen sind nützlich für die Kommunikation mit Code, der in anderen Programmiersprachen geschrieben wurde.

Hinweis: Der Standard definiert keine benannte Anforderung mit diesem Namen. Dies ist eine Typkategorie, die durch die Kernsprache definiert wird. Sie wird hier nur der Konsistenz halber als benannte Anforderung aufgeführt.

Inhaltsverzeichnis

Anforderungen

Die folgenden Typen werden zusammen als Standard-Layout-Typen bezeichnet:

Eigenschaften

Siehe Standard-layout .

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
CWG 1672 C++11 Regel für erstes nicht-statisches Datenelement ignoriert
Existenz leerer Basisklassen
Regel für erstes nicht-statisches Datenelement
rekursiv gemacht
CWG 1813 C++11 Klasse mit einem in einer indirekten Basis definierten Member
war technisch nicht standard-layout
Alle Member-Deklarationen müssen
in derselben Klasse sein
CWG 2120 C++11 Array als erstes Member wurde nicht berücksichtigt beim
Vergleichen des ersten Elementtyps mit Typ einer Basis
Array-Member werden berücksichtigt

Siehe auch

prüft, ob ein Typ ein Standard-Layout Typ ist
(Klassen-Template)