Heim > Backend-Entwicklung > C++ > Hauptteil

Warum unterstützt „std::optional' keine Referenztypen?

Susan Sarandon
Freigeben: 2024-10-26 18:40:30
Original
174 Leute haben es durchsucht

Why Doesn't `std::optional` Support Reference Types?

Optionale Referenzen: Abwesenheit in std::optional

Im Gegensatz zur optionalen Klasse von Boost, die Referenztypen unterstützt, ist std::optional der Standardbibliothek fehlt diese Funktionalität. Dieses Versäumnis hat zu Nachforschungen über die Gründe für diese Entscheidung geführt.

Mangelnde Spezialisierung

Als std::optional ursprünglich als std::experimental::optional vorgeschlagen wurde libc äußerten die Ausschussmitglieder Bedenken hinsichtlich optionaler Referenzen. Anschließend entschieden sich die Autoren in der dritten Überarbeitung des Vorschlags (n3527), optionale Verweise zu einem Hilfsvorschlag zu machen, um die Wahrscheinlichkeit zu erhöhen, dass optionale Werte genehmigt und in C 14 integriert werden.

Zukunftsaussichten

Obwohl optionale Referenzen aus anderen Gründen nicht in C 14 aufgenommen wurden, lehnte das Komitee sie nicht direkt ab. Sie bleiben offen für die Möglichkeit, optionale Verweise in zukünftige C-Standards aufzunehmen, wenn ein formeller Vorschlag vorgelegt wird.

Alternative Lösungen

In der Zwischenzeit können Entwickler alternative Lösungen in Betracht ziehen wie zum Beispiel benutzerdefinierte Objekt-Wrapper oder die Verwendung der boost::optional-Bibliothek, die die Funktionalität für Referenztypen bereitstellt.

Das obige ist der detaillierte Inhalt vonWarum unterstützt „std::optional' keine Referenztypen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!