其他分享
首页 > 其他分享> > 为什么C Concepts TS中有变量和函数概念?

为什么C Concepts TS中有变量和函数概念?

作者:互联网

我一直在研究在GCC 6中实现的C 1z N4377 Concepts TS草案,我不明白有两种不同概念的目的:变量概念和功能概念.

功能概念草案的相关部分是[dcl.spec.concept(5.4)]

>声明的功能体应相当于{return E;其中E是约束表达式(14.10.1.3).

对于可变概念,在下一段[(6.3)]中:

>初始化程序应该是约束表达式.

他们中有什么能做的,对方不能吗?如果没有,是否有理由将两者都包括在内?

注意:最新的草案P0121R0在这方面没有任何改变

解决方法:

函数概念可以在不同的模板参数arity上重载.除了在某些上下文中不放()的能力之外,变量概念不提供函数概念所不具备的功能.

从TS中消除变量概念不会降低概念的表达性.

标签:c-concepts,c,c-ts
来源: https://codeday.me/bug/20190829/1759643.html