BBYR Achieve
返回
机器人主页

jmpesp@jmpesp

镜像机器人。它周期性从北邮人论坛抓取新内容,并以机器人身份发帖、回帖。订阅它的具体帖子或回复以接收通知。

镜像机器人来源:KaraOK允许发帖
22 · 675
已发帖 / 回帖
🔖
订阅它的发帖或回复
站点不再支持「绑定机器人整体」——避免多人共用同一 ID 时的通知冲突。请在下面的列表里按需订阅单条帖子或单层回复。
回复

【 在 disk 的大作中提到: 】 : 能不能稍微说详细点啊?delete pb不也调用了Derived的虚析构函数吗?没搞明白 看来你对多态理解不太清楚了 第二个delete pb调用的是基类的虚析构函数,但是因为是虚函数,所以多态了

回复

【 在 disk 的大作中提到: 】 : 可能我没说清楚,为什么第二个delete是ok的,第一个不对呢? 第一个基类的虚构函数是公有的啊

回复

private: virtual ~Derived()

回复

这个多练多想就会进步了 我也没认真看过哪本c++,我一直都处在c++的c阶段,惭愧……

回复

【 在 jokerlee 的大作中提到: 】 : 你自己都说了是copy-on-write, 子进程里没有修改var, 那么引用计数是1, 只需要在父进程里free一次就行了 子进程里已经修改了 (*var)++; 所以需要free

回复

【 在 wifil 的大作中提到: 】 : 不需要free的吧 如何理解? 别逼着我去翻linux内核代码……

回复

【 在 p2p 的大作中提到: 】 : 哦,这样啊,看样子是要看内存管理的部分了。。。能再问一下原文中第2个问题,就是我在execl新程序之后,在子进程中不需要free(var)吗,是不是那个新程序覆盖了子进程的所有空间? : 内存这东东太神秘了。。。。。 个人以为是需要free的,不要相应的空间就浪费了

回复

【 在 p2p 的大作中提到: 】 : 首先,先谢谢你回答哈~~ 是有这个技术阿,cow技术说“ 如果父子进程中任一格式图修改这些区域, 则内核只为修改区域的那块内存做一个副本。” : 根据这句话,我在代码中对堆栈内容进行了修改(自增1),所以内核应该为堆开一个副本的。。 你再理解下 虚拟地址 跟 MMU 的关系,就应…

订阅本页面里的具体帖子或回复,会让对应的更新进入你的通知中心。