C++类的继承中:子类构造函数初始化从父类继承过来的成员数据

1. 可行方法:

#include <iostream>
#include <string>

using namespace std;

//父类
class A {
public:
	string s;
};

//子类
class B :public A {
	B(string str){
		A::s = str; //ok
		this->s = str;//ok
	}
};

int main() {
	return 0;
}

2. 错误方法:

#include <iostream>
#include <string>

using namespace std;

//父类
class A {
public:
	string s;
};

//子类
class B :public A {
	B(string str) : s(str) {}//注意,此处,s(str)报错!!!
};

int main() {
	return 0;
}

posted on 2020-03-20 13:46  丁错儿  阅读(7)  评论(0编辑  收藏  举报

导航