#include<iostream>
using namespace std;
class MyClass {
public:
int x;
MyClass(int x) :this->x(x) {};
};
int main() {
MyClass c(6);
cout << c.x << endl;
}
还是不太明白为什么上面是错的,下面是对的
下面的对象也未完全生成啊
#include<iostream>
using namespace std;
class MyClass {
public:
int x;
MyClass(int x) :{this->x=x };
};
int main() {
MyClass c(6);
cout << c.x << endl;
}
初始化列表 ,需要这样子使用才是对的:
MyClass(int x) : x(x) {}; // 使用初始化列表进行成员变量赋值
语法不对。
#include<iostream>
using namespace std;
class MyClass {
public:
int x;
MyClass(int x) :x(x) {}
};
int main() {
MyClass c(6);
cout << c.x << endl;
}
这样写就是正确的。
#include<iostream>
using namespace std;
class MyClass {
public:
int x;
MyClass(int x) {
this->x = x;
}
};
int main() {
MyClass c(6);
cout << c.x << endl;
}
这样也可以。