1)
2)子类对象可以给父类对象赋值:
1 #include<iostream> 2 3 using namespace std; 4 5 class student 6 { 7 public: 8 student(int a,int b) 9 { 10 cout<<"大家好。我是父类的构造函数"<<endl; 11 } 12 private: 13 int a; 14 }; 15 16 17 class ss:public student 18 { 19 public: 20 ss(int a,int b):student(a,b) 21 { 22 cout<<"大家好,我是子类的构造函数"<<endl; 23 } 24 25 }; 26 int main() 27 { 28 student aa(4,5); 29 ss cc(2,3); 30 student bb=cc; 31 }
3)对与(2)的代码的解释:
因为,我的子类能够填满 父类的内存 所以 子类可以给 父类赋值, 但是 反过来不行
4)为啥 可以 父类指针操作 子类空间
因为 父类功能少于 子类啊, 那样 我用父类的指针 操作子类,仅仅也就是操作 子类和父类公用的那些函数或变量,
但是 你要是用子类指针操作 父类 那么子类有的功能 ,在父类中没有啊,所以 不行,
只能用功能少的 接收 功能多的
一句话-------> 就是 内存布局能够满足于父类指针的全部需求 所以 父类指针能操作 子类内存