指针引用分四种情况:
1.直接用基类指针引用基类对象
2.直接用派生指针引用派生对象
3.由基类指针引用派生类对象,由于派生类也是基类对象(包含关系),所以这种引用是安全的。但是只能引用基类成员,若试图通过基类指针引用那些只在派生类中才有的成员,编译器会报告语法错误。(解决该问题的答案是虚函数和多态性)
4.用派生类指针引用基类对象,这种方式会导致编译器报错。必须先把派生类指针强制转换成基类指针。
如果基类和派生类都定义了同名函数,通过对象指针调用成员函数时,到底调用哪里的函数由指针的原始类型决定,而不是由指针实际指向的对象类型决定。
,
时间: 2024-07-29 02:33:24