2017-08-16 87 views

回答

1

的刪除器是不是正在這裏所指。

shared_ptr<>需要分配(除其他事項外),每個分配的對象(強和弱引用計數),另外兩個號碼。

如果使用std::make_shared(),他們會得到存儲與對象本身,否則,將需要爲它單獨分配。

此外,請記住,​​可以利用的空類的優化,以消除對非狀態刪除器的任何開銷。

GCC,至少是出現(至少std::default_delete)這樣做: https://godbolt.org/g/nbENL7