【发布时间】:2017-11-16 20:42:20
【问题描述】:
我一直在查看在 GCC 6 中实现的 C++1z N4377 Concepts TS 草案,但我不明白拥有两种不同概念的目的:变量概念和函数概念。
函数概念草案的相关部分是[dcl.spec.concept (5.4)]
- 声明应具有等效于
{ return E; }的函数体,其中E是约束表达式 (14.10.1.3)。
对于变量概念,在下一段 [(6.3)] 中:
- 初始化器应该是一个约束表达式。
有什么他们中的一个可以做而另一个不能做的吗?如果没有,是否有理由同时包含两者?
注意:最新草案P0121R0在这方面没有任何改变
【问题讨论】:
-
注意:概念不会出现在 C++17 中,这是本周早些时候宣布的。
-
感谢提醒,我没听懂。 Tom Honermann 的 Why Concepts didn’t make C++17 内容丰富,如果有人想知道的话。
标签: c++ c++-concepts c++-ts