1、多态方法调用规则
虚函数,重写 |
1、、多态时不能调用子类特有的方法。可强转调用,是因为使用时是函数指针找到函数入口去执行的。父类没有这指针; 2、多态调用的方法基本都是子类的,如果子类没有重写则是调用父类的,这个于虚函数列表有关。 3、想调用父类父类方法则需要使用命名空间 |
非虚函数,重写 | 父类成员 |
测试案例
//略
2、父强转为子
编译时 | 使用时 | |
父类指针引用指向子类对象(多态) | 不报错 | 与普通子类对象无差异 |
父类指针引用指向父类对象 | 不报错 | 使用子类特有成员变量会出错,但是使用方法不出错 |
//略
版权声明:本文为qq_40737025原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。