1. 程式人生 > >upcast 做了什麽操作

upcast 做了什麽操作

但是 pre pri cas namespace code int 虛表 成員

把子類中僅僅繼承而來的成員,賦值給父類。

但是,不會改變虛表!因為這個obj的類型沒變。

#include <stdio.h>

using namespace std;

class A{
private:
        int i;
public:
        A(int ii):i(ii){}
        void print(){ printf("A::print() %d\n",i); }
};

class B:public A{
private:
        int j;
public:
        B(int
ii,int jj):A(ii),j(jj){} void print(){ printf("B::print() %d ",j);A::print(); } }; int main() { A a(1); B b(2,3); a.print(); b.print(); a = b; a.print(); return 0; }

upcast 做了什麽操作