因此,对于前面关于带有三元运算符的 const/non-const 的问题,以下test
函数是否适用于 C++11 标准:
template<bool UseConst> class MyClass
{
public:
constexpr bool test()
{
return (UseConst) ? (_constvar) : (_var);
}
protected:
int _var;
static const int _constvar;
}
整个问题是,它_constvar
是 const,并且_var
是非常量。我必须通过相同的函数根据模板参数访问这两个数据,并且我希望在使用 const 时有一个编译时函数。
功能是否test()
满足我的要求?