C++11 结构定义后的第二个作用域
我查看了Eric Nieblers range库,在那个里(/include/range/v3/utility/concepts.hpp,第36行)我找到了表单代码C++11 结构定义后的第二个作用域,c++11,syntax,C++11,Syntax,我查看了Eric Nieblers range库,在那个里(/include/range/v3/utility/concepts.hpp,第36行)我找到了表单代码 constexpr struct valid_expr_t { template<typename ...T> true_ operator()(T &&...) const; } valid_expr {}; constexpr结构有效\u expr\t { 样板 真运算符()(T&…
constexpr struct valid_expr_t
{
template<typename ...T>
true_ operator()(T &&...) const;
} valid_expr {};
constexpr结构有效\u expr\t
{
样板
真运算符()(T&…)常量;
}有效的表达式{};
我对valid_expr之后的第二个作用域/大括号感到困惑。整个结构的意义是什么。这是结构定义吗?这种语法在C++98中似乎是不允许的。第二对大括号中可以包含什么?是C++11,它只是初始化有效的expr
对象
就像做
struct valid_expr_t
{
template<typename ...T>
true_ operator()(T &&...) const;
};
constexpr valid_expr_t valid_expr {};
struct-valid\u-expr\t
{
样板
真运算符()(T&…)常量;
};
constexpr valid\u expr\t valid\u expr{};
这是C++11,它只是初始化有效的expr
对象
就像做
struct valid_expr_t
{
template<typename ...T>
true_ operator()(T &&...) const;
};
constexpr valid_expr_t valid_expr {};
struct-valid\u-expr\t
{
样板
真运算符()(T&…)常量;
};
constexpr valid\u expr\t valid\u expr{};