c – “单一分配”对boost :: make_shared意味着什么?
在
make_shared的boost文档中,它说:
我不明白“单一分配”的含义,是什么意思? 解决方法
“分配”是指从对分配器的调用获得的内存块.
通常,使用指针构造函数创建一个shared_ptr为“控制块”分配内存,“控制块”保存引用计数和删除.该共享文件的副本都引用相同的控制块,以便它们共享引用计数.因此,总共有两个分配 – 对象本身和由shared_ptr创建的控制块. 如果与make_shared一起创建对象和shared_ptr,则只能进行一次分配.您可以将其视为具有两个成员的单个结构: >正在管理的对象>控制块. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |