8

Voglio usare std::experimental::optional, ma MSVS 2013 mi dice che non riesce a trovare l'intestazione.No <optional> in MS Visual Studio 2013 - cosa fare?

  • Perché non è lì?
  • Posso eseguire il rollover in base al codice altrove? Forse la proposta di C++ 14?
+1

[Boost.Optional] (http://www.boost.org/doc/libs/release/libs/optional/doc/html/index.html) o https://github.com/akrzemi1/Opzionale/ –

+0

Hai provato a lanciare da solo? – Yakk

+0

@PiotrS .: Si prega di farlo in una risposta in modo che io possa accettarlo. – einpoklum

risposta

10

std::experimental::optional proviene dalla biblioteca Boost.Optional, e questa implementazione funziona bene in Visual C++ 12,0 (anche se differisce a little). L'implementazione della singola intestazione di riferimento, basata sul documento della proposta N3793, può essere trovata here.

L'ultimo elenco di funzionalità core e libreria supportate C++ 11/14/1z fornite con Visual Studio è disponibile nello Visual C++ Team blog, in particolare da this post. È possibile visualizzare un set di file di intestazione dell'implementazione della libreria standard (e alcune estensioni) di Microsoft here.

+0

si prega di lasciare commenti quando downvoting –

+2

Non hai ancora risposto perché std :: opzionale non è in VC++. Nessuno dei link menziona anche facoltativo. –

+0

@ ОгњенШобајић è chiaro che questa è una libreria C++ 1z, ti aspetteresti una spiegazione che nel 2013 nessuno aveva previsto che ci sarebbe stata una proposta per l'aggiunta di 'opzionale' a C++ 1z (presumibilmente, C++ 17 -> 2017)? –