麻烦看下这种写法,没见过
class Test2
{
public:
Test2(int i = 0):val(i){}
void func()
{
cout<<val<<endl;
}
private:
int val;
};
其中 Test2(int i = 0):val(i){} 该怎么理解,那个冒号是什么作用,这一行是函数吗?
[解决办法]
Test2(int i = 0):val(i)
{
}
是一个构造函数
[解决办法]
就是把i赋值给数据成员val,
因为这是一个函数,所以跨号是必须加的
[解决办法]