And*_*rew 10 c++ static struct const
我想定义一个结构,其中将存储一些数学常量.
这就是我现在所拥有的:
struct consts {
//salt density kg/m3
static const double gamma;
};
const double consts::gamma = 2350;
Run Code Online (Sandbox Code Playgroud)
它工作正常,但会有超过10个浮点常量,所以我不想在它们之前写'static const'.并定义类似的东西:
static const struct consts {
//salt density kg/m3
double gamma;
};
const double consts::gamma = 2350;
Run Code Online (Sandbox Code Playgroud)
它看起来很好,但我得到了这些错误:
1.不允许成员函数重新声明
2.非静态数据成员可能不在其类外定义
我想知道是否有任何C++方法可以做到这一点?
Yac*_*oby 30
使用命名空间而不是尝试将结构化为命名空间.
namespace consts{
const double gamma = 2350;
}
Run Code Online (Sandbox Code Playgroud)
访问数据的方法也具有完全相同的synatx.例如:
double delta = 3 * consts::gamma;
Run Code Online (Sandbox Code Playgroud)
Jer*_*fin 11
听起来你真的只想要一个命名空间:
namespace consts {
const double gamma = 2350.0;
// ...
}
Run Code Online (Sandbox Code Playgroud)
除了我试图想出一个比consts它更好的名字.