在我的例子中:
在向上看,第二次d.print()打电话不应打印"基地"吗?
是不是"d"派生对象上传到基类对象?
在低迷时期,它有什么优势?
你能用实际的方式解释上传和下传吗?
#include <iostream>
using namespace std;
class Base {
public:
void print() { cout << "base" << endl; }
};
class Derived :public Base{
public:
void print() { cout << "derived" << endl; }
};
void main()
{
// Upcasting
Base *pBase;
Derived d;
d.print();
pBase = &d;
d.print();
// Downcasting
Derived *pDerived;
Base *b;
pDerived = (Derived*)b;
}
Run Code Online (Sandbox Code Playgroud)