在CArray中使用shared_ptr吗?

在我的应用程序中,我需要使用CArray来管理大量的指针。每个指针都指向在堆中分配的对象。

由于CArray不再支持DestructElements,因此我正在考虑使用智能指针,尤其是shared_ptr,如下所示:

CArray<std::shared_ptr<Cmyobject>,std::shared_ptr<Cmyobject>>

我阅读了CArray的源代码,并且知道它将在堆中分配元素空间。但是,在https://docs.microsoft.com/en-us/cpp/cpp/smart-pointers-modern-cpp?view=vs-2015的文档中,其表示“请勿在智能指针本身上使用new或malloc表达式。”,这意味着不应在堆中分配智能指针。那么我是否可以将智能指针用作CArray中的元素?

谢谢

bigworm01 回答:在CArray中使用shared_ptr吗?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3160925.html

大家都在问