- 报错
default argument missing for parameter 2 of ‘test::test’(test只是例子)
class test {
public:
test(float long = 10, int times);
};
把test函数修改一下,把带有默认值的参数放到后面就好了。
test( int times,float long=10);
- 类中const和static数据的初始化
1、类中常量数据成员必须(只能)在构造函数的初始化列表中进行初始化,因为一旦进入构造函数,此常量数据成员不能再改变。注意,只能在初始化列表中进行初始化的成员还有引用成员。
2、静态变量跟构造函数没关系:构造函数是为了构造对象而定义的,而静态变量是一个类的变量,而不是不是类的对象的变量,所以自然不应该在用于构造对象的构造函数中初始化。
- 报错
error: expected class-name before ‘{’ token
可能是前一个类末尾没有;
expected primary-expression before ’ int ’
在调用函数时,参数前面多加了int