C++ 子类继承父类 之 构造函数
前面常写点java的代码,对于C++基本的一些概念很模糊了,就当写个小笔记
之后遇到问题肯定还要补充。
主要内容:
a. 子类继承父类写法
b. 子类继承父类的构造函数
创建父类F.h
- #include
-
- using namespace std;
-
- struct F
- {
- F();
- F(F& f);
- int x;
- vector<int> intVec;
- };
-
- F::F(){
-
- }
-
- F::F(F& f){
- x &#61; f.x;
- intVec &#61; f.intVec;
- }
1) 其中构造函数F(F& f) &#xff0c;后面子类继承的时候会用到
子类S.h
- #include "F.h"
-
- struct S : public F
- {
- int y;
- S(F f);
- };
-
- S::S(F f) : F(f)
- {
- }
测试代码 main.cpp :
- #include
-
- using namespace std;
-
- int main(){
- F f;
- f.x &#61; 0;
- for(int i &#61; 0;i < 5;i&#43;&#43;){
- f.intVec.push_back(i);
- }
- S s(f);
- cout << "s.x :"<< s.x << endl
- <<"s.intVec.size() : " << s.intVec.size() << endl
- << "values of s.intVec :";
- for(int i &#61; 0;i < 5;i&#43;&#43;){
- cout << " " << s.intVec[i];
- }
- return 0;
- }
输出结果&#xff1a;
子类S继承了父类F的一个构造函数
FROM: http://blog.csdn.net/anialy/article/details/7552315