3

ドラフト C++14 では、変数テンプレートのサポートが追加されました。提案 ( N3651 ) の例はすべて定数 ( または のいずれconstexprconst) を示していますが、私が知る限り、これは必須ではありません。変数テンプレートの変数は変化することがありますか。たとえば、割り当てられますか?

template<typename T>
T magicVal = 42;

magicVal<int> = 0;       // okay?
4

2 に答える 2

6

はい、変数テンプレートのインスタンスは第一級のオブジェクトです。事実上、テンプレート ID は単なる名前です。

static「ボンネットの下」の変数テンプレートは、単一のメンバーを持つ昔ながらのクラス テンプレートとまったく同じです。

編集:constexpr数学的実体を一般的に表すなど、定数のみに関して提案が書かれたようです。他のオブジェクトへの拡張は、審査委員会によって要求され、後付けとして追加されました。

于 2013-11-07T01:07:04.007 に答える
1

これは本当に奇妙な制限です。最新のドラフトの第14章を読んでも、そのような兆候はありません。

于 2013-11-07T01:03:23.587 に答える