例如:
constexpr int g() { return 30; }
constexpr int f()
{
// Can we omit const?
const int x = g();
const int y = 10;
return x + y;
}
有没有任何一点到永远在 a 中声明局部变量constexpr
功能与const
?
Aren't constexpr
函数与const
局部变量相等的给那些没有const
?
换句话说,是否constexpr
在一个函数上impose(意味着)const
关于它的局部变量?
声明变量的参数相同const
in non-constexpr
函数也适用于constexpr
功能:
- 声明一个变量
const
记录了它永远不会改变的事实。在某些情况下,这可能有助于使函数更具可读性。
- 声明一个变量
const
影响过载分辨率,并可能使h(x)
解决h
取决于是否x
is const
.
当然,方向相反,正如评论中已经提到的:
Even in constexpr
函数、局部变量可能会改变。如果随后更改这些变量,以便它们const
,将不再接受更改它们的尝试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)