ja jechałem przez wielkich artykułów na C++ POD, Trivial and Standard Layout classes jedną właściwość Nie zrozumiałe o standardowym układzie jest następująca: -standardowym układzie C++
A standard layout has no base classes of the same type as the first
non-static data member
Więc dodaje nie będzie layout Standard, jak to ma pierwszy człon samo jak klasy podstawowej
struct NonStandardLayout3 : StandardLayout1 {
StandardLayout1 x; // first member cannot be of the same type as base
};
Ale wydajność mądry i mienia mądry jak jest powyżej struct inaczej niż
struct StandardLayout5 : StandardLayout1 {
int x;
StandardLayout1 y; // can have members of base type if they're not the first
};
, która jest korektą powyższej.
Powiązane [post] (http://stackoverflow.com/q/7160901/183120). – legends2k