2016-12-22 15 views
5

g++でどうやって使うことができますか?なぜですか?std::variantstd::experimentalです(しかし、std::optionalです)? g++のどのバージョンが必要ですか? boostを使用しないことをお勧めします。標準ライブラリのみを使用したいと思います。g ++でstd :: variantを使用する

編集:g++ 7のように見えます。std::variantです。それから私の質問は、いつリリースされるのか、実験版を使用しているときにどのような問題が発生するのでしょうか?

+0

最新版の「g ++」 –

+0

を使用してください。@BasileStarynkevitchバージョン番号は何ですか?どうすれば入手できますか? –

+0

端末で 'g ++ -v'または' g ++ --version'を実行します。 –

答えて

3

This pageは、そのGCC 7はstd::variantであると言います。

+0

うん、わかりました。どうすればUbuntuにインストールできますか?または、私が知ったように、GCC 7はまだリリースされていません。 –

+1

@AleksandrTukallo:ダウンロードするだけで、設定できます。作る; make installを実行します。完璧に動作します! – Klaus

+0

@Klausありがとう!しかし、リリース前にそれを使用しているときに、どのような問題が発生する可能性がありますか?大丈夫ですか? –

3

GCCにはinfo pageがあり、どの言語機能がどのバージョンで実装されているかを確認できます。 variantはまだ実装されていないようです。

+0

' std :: optional'も実装されていませんが、私の 'g ++ 5.4'でも使えます:[experimental optional](http://en.cppreference.com/w/cpp/experimental/optional/optional)。 –

+1

いつも[Boost.Variant](http://www.boost.org/doc/libs/1_62_0/doc/html/variant.html) –

+0

@ user2393256リンクが標準ライブラリの状態を一覧表示するのか、それともコア言語の機能のみを表示しますか? –

関連する問題