把派生类对象隐式转换为基类对象 派生类对象能作为基类对象处理(即派生类对象指 针可强制转换成基类指针),反之不可! 例如:(引用写法) Derive d: Base&refB=d;//转成基类对象 /xefB只能作为Base对象看待 Derive&reED=refB;//转成派生类对象,OK! Base b: Derive&refD=b;//转成派生类对象,ERR!
把派生类对象隐式转换为基类对象 派生类对象能作为基类对象处理(即派生类对象指 针可强制转换成基类指针),反之不可! 例如: (引用写法) Derive d; Base& refB = d; // 转成基类对象 // refB 只能作为 Base 对象看待 Derive& refD = refB; // 转成派生类对象,OK! Base b; Derive& refD = b; // 转成派生类对象,ERR!
把派生类对象隐式转换为基类对象 派生类对象能作为基类对象处理(即派生类对象指 针可强制转换成基类指针),反之不可! 例如:(指针写法) Derive d: Base*pB=(Base*)&d;//转成基类对象的指针 /*pB只能作为Base对象看待 Derive*pD=( Derive*)pB;//转成派生类对象指针,oK! Base b: ● Derive*pD=( Derive*)b;//转成派生类对象指针
把派生类对象隐式转换为基类对象 派生类对象能作为基类对象处理(即派生类对象指 针可强制转换成基类指针),反之不可! 例如: (指针写法) Derive d; Base* pB = (Base*)&d; // 转成基类对象的指针 // *pB 只能作为 Base 对象看待 Derive* pD = (Derive*)pB; // 转成派生类对象指针,OK! Base b; Derive* pD = (Derive*)&b; //转成派生类对象指针,ERR!