-
虚析构函数的应用情况:当父类的指针在堆中指向子类的对象时,还想使用父类的指针释放这块内存。这个virtual会继承下去,也就是子类中的析构函数之前即使不写这个关键字,编译器也会默认其为虚的查看全部
-
同名成员时,调用子类,子类使用自身成员查看全部
-
用父类指针指向从堆中分配内存的子类对象 通过父类的指针销毁时只调用了父类的析构函数 没有子类的 可能会导致内存泄漏 这种情况需要虚析构函数解决 该关键字可以被继承查看全部
-
子类 isA 父类,或者 派生类 isA 基类,可以通过子类赋值实例化父类对象,但是不能用父类实例化子类。也可以用父类的指针指向子类对象,但是不能用子类的指针指向父类对象。综合来说,只能子类给父类赋值。因此可以将形参设置成父类对象或者父类的指针或者父类的引用,这样就可以接受子类对象的赋值,也可以接受父类对象的赋值。其中,指针接受地址,引用接收对象。 将子类的对象赋值给父类对象(或者说用子类的对象初始化父类对象),本质就是将子类从父类中继承的成员赋值给父类对象,子类的其他数据成员就会被截断(因为父类对象只能接受自己原来拥有的数据)。如果是父类的指针指向子类对象,父类指针也只能访问父类拥有的数据成员,无法访问子类独有的数据成员及成员函数。查看全部
-
可以用派生类初始化基类 可以用基类的指针指向派生类的对象查看全部
-
子类的对象可以赋值给父类 用父类的指针指向子类的对象查看全部
-
可以再以父类对象或者引用为参数的函数中 传入父类或者子类的对象或引用查看全部
-
将子类对象赋值给父类对象 或用子类对象初始化父类对象时 将相同的数据成员赋值给父类对象的对应成员 不同的被截断 即丢失了查看全部
-
使用父类指针指向子类对象 只能通过父类指针访问到父类有的数据成员和成员函数查看全部
-
什么时候使用虚函数,就是父类指针指向堆中子类对象,并使用父类指针去释放这块内存,这时候就是要用到虚函数了查看全部
-
隐藏的三个关键字查看全部
-
私有继承的访问属性查看全部
-
保护继承的访问属性查看全部
-
公有继承的访问属性查看全部
-
符合父子关系 两个成员也同名(类型不一样也可以) 隐藏父类的成员查看全部
举报
0/150
提交
取消