关注
最后那个程序的输出为4,1的原因是基类的析构函数不是虚函数,因此在执行的时候不能实现动态绑定,所以虽然将B类对象的指针向上转型赋值给A类对象指针后,虚函数会依照虚表指针的指向执行重写后的DO方法,即执行类B中的DO方法,第一个输出为4。但是A类的析构函数不是虚函数,因此在删除A类对象的指针时,会依然执行A类的析构函数(不是虚函数的方***根据指针的类型执行相应的方法),第二个输出为1。
查看原帖
8 1
相关推荐
点赞 评论 收藏
转发
点赞 评论 收藏
转发
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
362714次浏览 7414人参与
# 晒一晒我的offer #
2776924次浏览 49561人参与
# 非技术岗薪资爆料 #
5630次浏览 122人参与
# 华为求职进展汇总 #
434974次浏览 4369人参与
# 第一次面试 #
14355次浏览 226人参与
# 你更愿意参加线上面试还是线下面试? #
5438次浏览 78人参与
# 除了offer,现在你还缺点啥? #
2277次浏览 47人参与
# 机械人怎么评价今年的华为 #
50561次浏览 413人参与
# 找工作,你会甘心进小厂还是猛冲大厂 #
22324次浏览 214人参与
# 来聊聊机械薪资天花板是哪家 #
19152次浏览 151人参与
# 如何确定求职岗位 #
101422次浏览 2404人参与
# 应届生应该先就业还是先择业 #
11030次浏览 108人参与
# 通信硬件薪资爆料 #
139697次浏览 1016人参与
# 百度工作体验 #
19067次浏览 208人参与
# 应届生初入职场,求建议 #
21324次浏览 528人参与
# 海信求职进展汇总 #
6841次浏览 91人参与
# 租房前辈的忠告 #
19954次浏览 1586人参与
# 实习工作,你找得还顺利吗? #
5160次浏览 79人参与
# 如果再来一次,你还会学硬件吗 #
16905次浏览 332人参与
# 为什么那么多公司毁约 #
32183次浏览 268人参与