C++26 macht polymorphe Member endlich zu normalen Werten

Composite objects and C++26 the std:polymorphic type

Der neue Typ std::polymorphic in C++26 löst ein altes Problem: Klassen, die polymorphe Komponenten besitzen, müssen nicht mehr das Rule of Five implementieren oder eine clone()-Methode im gesamten Hierarchiebaum verteilen. std::polymorphic speichert die Kopieroperation typgelöscht beim Erzeugen und ermöglicht so tiefe Kopien, propagiertes const und garantiert Nicht-Null-Zustände – der Besitzer bleibt ein regulärer, kopierbarer Wert.

Kurz gesagt, die std::polymorphic-Komponente verhält sich wieder wie ein reguläres Member: kopierbar, tief const und immer vorhanden, während sie ihren dynamischen Typ behält.

Mehr von diesem Tag

2026-10-21