gpt4 book ai didi

c++ - 为什么 C++ Concepts TS 中同时包含变量和函数概念?

转载 作者:太空狗 更新时间:2023-10-29 20:37:08 25 4
gpt4 key购买 nike

我一直在看 C++1z N4377在 GCC 6 中实现的概念 TS 草案,我不明白拥有两种不同概念的目的:变量概念和函数概念。

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

  • 声明应该有一个等同于{ return E; 的函数体 其中 E 是一个约束表达式 (14.10.1.3)。

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

  • 初始化器应该是一个约束表达式

是否有任何一个他们可以做而另一个不能做的事情?如果不是,是否有理由将两者都包括在内?

注:最新稿,P0121R0在这方面没有任何改变

最佳答案

函数概念可以在不同的模板参数 arity 上重载。变量概念没有提供函数概念所没有的东西,除了在某些上下文中不放置 () 的能力。

从 TS 中消除变量概念不会降低概念的表达能力。

关于c++ - 为什么 C++ Concepts TS 中同时包含变量和函数概念?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35928595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com