Boost のバージョンに基づいていると読みましたが、実装に至ったとき、それが何を意味するのかよくわかりませんでした。Boost が独自の可変個引数テンプレートを使用することは知っていますが、c++0x は新しいタプルに独自の可変個引数テンプレートを使用すると思います。
1 に答える
6
tuple
C++0x ドラフト標準のは、C++0x 可変個引数テンプレートを使用します。次のように宣言されています (§20.4.1):
template <class... Types> class tuple;
ただし、TR1 言語拡張機能にはtuple
、可変個引数テンプレートを使用しない も含まれていることに注意してください。TR1 では、次のtuple
ように宣言されています (§6.1):
template <class T1 = unspecified ,
class T2 = unspecified ,
...,
class TM = unspecified > class tuple;
whereM
は、少なくとも 10 である必要がある実装定義の値です。
TR1 は正式には C++ 言語の一部ではありませんが、最近の多くの実装でサポートされています。可変個引数テンプレートをまだサポートしていない実装がある場合は、 TR1 をサポートしている可能性がありtuple
ます。
最新のドラフト規格である最終委員会ドラフト(10.5 MB PDF リンク) をダウンロードできます。
于 2010-08-17T13:08:50.507 に答える