鸡啄米
最新评论及回复
-
3873. 菜鸟:
好赞2015/9/13 13:35
-
3872. 西瓜好吃:
base = child;这句话简直不可理解,child对象具备base所不具备的属性(成员),直接这样赋值,child多出来的成员值赋到哪去了?是直接抛弃吗?今夜 于 2015-9-13 0:20:17 回复好巧啊,我也在看这个序列。
base = child,我是这么理解的,把child赋给base,只是把base对象中所需要的成员给赋值了(用child中对应的成员),child中多出来的成员并没有用到。无需抛弃啊,还在内存里,child并没有delete掉。
有空一起讨论啊。今夜 于 2015-9-13 0:21:24 回复好巧啊,我也在看这个序列。
base = child,我是这么理解的,把child赋给base,只是把base对象中所需要的成员给赋值了(用child中对应的成员),child中多出来的成员并没有用到。无需抛弃啊,还在内存里,child并没有delete掉。
有空一起讨论啊。西瓜好吃 于 2015-9-13 16:51:37 回复我是这两天从头看过来的,哈哈。我是这个意思,child是个大果篮,base是个小果篮,child把果子复制一份给base,base根本盛不下啊,肯定要抛弃child独有的部分,child本身当然没被delete我知道。如果说编译器和CPU就是这样规定的,只接受两者共有的部分,那我就记住得了。就像
int a=2;
float b=5.6389;
a=b;//a结果为5,小数被抛弃,就类似于这里的盛不下。
博主何在,快来啊单线程编程 于 2022/1/6 9:05:25 回复派生类对象赋值给基类对象的时候确实会舍弃派生类新增的成员,所以从安全性上来讲,可以把派生类对象直接赋值给基类对象,派生类的新增成员被编译器自动舍弃,这好像也叫向上转型2015/9/12 17:22
-
3871. 小鱼:
搂主,我在用的是visual studio2012 ,找不到您说的overrides选项卡,请问还能在哪看到呢2015/9/11 16:11
-
3870. 我磊哥去:
相当好文啊。2015/9/10 16:45
-
3869. shaukin:
请问下,你的VS2008也是64位的吗? 我的32位的,后面的配置属性不大一样2015/9/9 16:17