use*_*801 5 c++ constexpr c++11
我有以下代码:
struct Literal
{
int val;
constexpr Literal(int const& val) : val(val) {}
constexpr Literal(Literal const& rhs) : val(rhs.val) {}
};
struct Parent
{
struct StaticObject
{
Literal const zero;
constexpr StaticObject() :zero(0) {}
};
static constexpr StaticObject outer{};
};
Run Code Online (Sandbox Code Playgroud)
行'static constexpr StaticObject outer {};' 给我错误:
'表达式没有评估为常数'
接下来是
注意:失败是由调用未定义的函数或未声明'constexpr'的函数引起的
注意:请参阅'Parent :: StaticObject :: StaticObject'的用法
据我所知,这里使用的所有函数都是定义和声明的constexpr.我错过了什么,或者这是一个编译器错误?
| 归档时间: |
|
| 查看次数: |
95 次 |
| 最近记录: |