Diskussion:Plain Old Data structure
Letzter Kommentar: vor 10 Jahren von Asfdlol in Abschnitt PODs in C++
PODs in C++
[Quelltext bearbeiten]Folgende Punkte fallen mir auf:
- "Kopier-Zuweisungs-Operator" Schlechte 1:1-Übersetzung aus dem C++-Standard, Zuweisungsoperator ist viel verständlicher und üblicher.
- "keine nicht-statischen Attribute" Sind mit Attributen Member gemeint? Schlechtes Wort, Member ist viel gebräuchlicher, davon abgesehen dass es Spracherweiterungen gibt, die explizit ein neues Konzept von Attributen (Properties) im Kontrast zu Membern einführen.
- "Darüber hinaus muss eine POD-Klasse ein Aggregat-Typ oder eine union sein" Schlechte Formulierung, denn die Anforderungen an einen Aggregat-Typ wurden vorhin eben aufgelistet.
- Der ganze Satz, dessen Anfang ich beim obigen Punkt zitiert habe, liest sich merkwürdig, als würde gegen Ende ein Verb fehlen.
- Auf das Verbot von Referenzen als Member wird nicht eingegangen.
- Auf das diffizile Problem mit dem (u.U. globalen)
operator&
, der ODR, dem Makrooffsetof
undva_start
(siehe hier) wird nicht eingegangen. Damit ist nicht jedes POD aus C++ geeignet für C-Code für PODs (was auch später im Text so behauptet wird). - Auf die Definition von PODs in C++11 wird nicht eingegangen.
- Ich fände eine einheitliche Auflistung der Anforderungen an den Typen viel übersichtlicher als dieser Text, aus dem man die Informationen extrahieren muss.
- "Zum Beispiel kann eine union in C++98 keine Klassen enthalten, die virtuelle Funktionen oder nicht-triviale Konstruktoren oder Destruktoren besitzt." Absolut unpassend, hat nichts mit PODs zu tun.
union
s dürfen sehr wohl auch nicht-POD-Typen enthalten.