3

「Concepts lite」はすでに TS として受け入れられており、(実装例) GCC のメイン ブランチにマージされていますSortableRandom_access_range

そのような事前定義された概念はどこで探せばよいでしょうか?

cppreference.comのリストは正確で網羅的なリストですか?

最新の GCC トランク ビルドで使用できますか?



編集 1 : 概念が C++17 に受け入れられないため、C++17 を TS に変更しました。

4

2 に答える 2

12

コンセプト TS で定義されたコンセプトはありません (出典: コンセプト TS を書きました)。

これは見落としでも間違いでもありません... 目標は、標準ライブラリに必要な概念を定義する (信じられないほどの) 時間を費やす前に、開発者が新しい機能を試す時間を確保できるように、TS で純粋な言語拡張を出荷することでした。

Ranges TS は、標準ライブラリに必要な概念を定義します。

GCC にはいくつかのコンセプトが含まれている可能性がありますが、そうする具体的な計画については聞いたことがありません。Ranges TS に表示される概念の多く (すべてではない) を定義するライブラリを https://github.com/asutton/originにありますが、まだ使用可能なリリースと適切なドキュメントに取り組んでいます。また、トランクからの GCC に対してのみコンパイルされます。来週までに十分な書類が届くことを願っています。

于 2015-09-03T18:38:52.300 に答える
6

「Concepts lite」は C++17 ですでに受け入れられていました

いいえ、そうではありません。別のTSです。

定義済みの概念はありますか?

言語機能に限定されている概念 TS によるものではありません。現在のRanges TS ワーキング ドラフトでは、多くの概念が定義されています。

于 2015-08-28T14:56:05.743 に答える