Looking for c++ Keywords? Try Ask4Keywords

C++std :: variant


Bemerkungen

Variante ist ein Ersatz für rohe union Einsatz. Es ist typensicher und weiß, um welchen Typ es sich handelt, und es konstruiert und zerstört die Objekte in dem Objekt sorgfältig, wenn es sollte.

Es ist fast nie leer: Nur in Eckfällen, in denen das Ersetzen des Inhalts geworfen wird und er nicht sicher zurückkehren kann, endet er in einem leeren Zustand.

Es verhält sich etwas wie ein std::tuple und etwas wie ein std::optional .

Die Verwendung von std::get und std::get_if ist normalerweise eine schlechte Idee. Die richtige Antwort ist in der Regel std::visit , so dass Sie direkt mit jeder Möglichkeit umgehen können. if constexpr innerhalb des visit werden kann, wenn Sie Ihr Verhalten verzweigen müssen, anstatt eine Laufzeitprüfung if constexpr , wird überprüft, ob der visit effizienter ist.

std :: variant Verwandte Beispiele