in C++ 11 ist eine nützliche Klasse, die eine C++ - Container-Schnittstelle über ein C-Stack-Array bereitstellt.Entwurfsentscheidung in Bezug auf std :: array fill
Aber warum hat nicht den typischen Füllkonstruktor, den die meisten Container haben? Stattdessen hat es eine Methode fill
.
Gibt es einen Grund, warum std::array
unter STL-Containern in dieser Hinsicht einzigartig ist?
Weil sonst std :: Array wäre kein POD mehr. –
Ich dachte C++ 11 entspannt die Definition von POD – Channel72
@ Channel72: POD: * "Eine POD-Struktur ist eine nicht-Union-Klasse, die eine __trivial Klasse__ und eine Standard-Layout-Klasse [...]" * ist. triviale Klasse: * "Eine triviale Klasse ist eine Klasse, die einen Standardkonstruktor (12.1) hat, keine __nicht-trivialen Standardkonstruktoren__ hat und trivial kopierbar ist." * Allerdings ist 'std :: array' ein Aggregat und ein solches ähnlichen Regeln folgen (siehe Borgleaders Antwort). – Zeta