用 MSVC++ 6.0 制作了这个简单的类
class Strg
{
public:
Strg(int max);
private:
int _max;
};
Strg::Strg(int max)
{
_max=max;
}
如果我用它听起来不错:
main()
{
Strg mvar(10);
}
但是现在如果我在另一个类中使用它:
class ok
{
public:
Strg v(45);
};
我收到消息错误: 错误 C2059:语法错误:“常量”
你能告诉我更多吗?
最佳答案
应该是:
class ok
{
public:
Strg v;
ok() : v(45) {}
};
没有默认构造函数(在本例中为 v)的非静态成员变量应使用 initialization lists 进行初始化.另一方面,在函数(如 main)中,您可以使用常规构造函数语法。
关于c++ - VC++6错误C2059 : syntax error : 'constant' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4519035/