21

プログラムを使用せずに動作させようとしてboostいますが、いくつかの有用なパターンの代替が見つかりません。つまり、boost::optional標準ライブラリに -likewise パターンが見つかりません。boost::optional(C++11 または他の場所)の標準的な代替手段はありますか?

4

3 に答える 3

26

簡単な答え: いいえ。

長い答え: ブーストの仕様に従って、独自のロールを作成してください。ドキュメントは非常に網羅的であり、コードはそれほど複雑ではありませんが、それでも平均以上の C++ スキルが必要です。

この回答を更新するには: 残念ながら、C++14 には が同梱されていませんでしたstd::optional。現在の提案 (リビジョン 5) はN3793であり、別の技術仕様として出荷されるか、C++17 の一部になる予定です。

于 2012-01-15T14:38:41.393 に答える
12

現在、C ++ 14 (またはC ++ 17)の提案があります。したがって、答えは(おそらく)まだです:)。

于 2012-11-09T13:00:05.410 に答える
1

pmrが説明したように、現時点では不可能であり、C++17 がリリースされるまで不可能です。

ただし、github でこの単一のヘッダー ライブラリを、boost- または std optional の代わりにドロップインとして使用できるはずです。依存関係はありません (c++11/c++14 対応コンパイラを除く)。

于 2015-07-30T15:23:08.747 に答える