相关疑难解决方法(0)

如何初始化constexpr引用

我试图初始化一个constexpr参考没有成功.我试过了

#include <iostream>

constexpr int& f(int& x) // can define functions returning constexpr references
{
    return x;
}

int main()
{
    constexpr int x{20};
    constexpr const int& z = x; // error here
}
Run Code Online (Sandbox Code Playgroud)

但我得到编译时错误

错误:constexpr变量'z'必须由常量表达式初始化

删除const结果

错误:将类型'int'的引用绑定到类型'const int'的值会删除限定符

即使我有一种constexpr自动暗示const变量声明的感觉.

所以我的问题是:

  1. constexpr参考以往有用吗?(即比const参考文献"更好" )
  2. 如果是,我该如何有效地定义它们?

PS:我看过几个与我有关的问题,例如哪些值可以分配给`constexpr`参考?,但我不认为他们解决了我的问题.

c++ reference constexpr c++11

21
推荐指数
3
解决办法
5323
查看次数

标签 统计

c++ ×1

c++11 ×1

constexpr ×1

reference ×1