为什么可以为父类指针new子类对象,而不能为子类指针new父类对象?
答案:3 悬赏:50
解决时间 2021-02-19 19:21
- 提问者网友:冷天寄予
- 2021-02-19 15:04
为什么指向父类的函数指针不能指向子类的函数(不谈强制类型),而指向子类的函数指针可以指向父类函数
最佳答案
- 二级知识专家网友:堕落奶泡
- 2021-02-19 15:28
因为子类包含有父类,把子指针赋给父指针时其实只是把子类中父类部分的地址赋给了父类指针而已,而父类里没有包含子类,所以不能复制,建议楼主变个程序然后再对照看下汇编就清楚了
全部回答
- 1楼网友:哥在撩妹请勿打扰
- 2021-02-19 17:43
这个太简单了吧 一只鸡必然是是一个动物 一个动物不一定是一只鸡啊
当编译器知道这是一个动物的时候 你得告诉他 这个动物是鸡 它才能让这只鸡吃小米啊
- 2楼网友:虚伪的现实
- 2021-02-19 17:04
通俗点讲,就是子类包含父类,所以子类对象比父类对象要大。
用大的模拟小的可以(切片),小的模拟大的就不行(越界操作)。
所以子类指针可以安全转换成父类指针,而反之不行。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯