在C++中,make_shared
是一個通用的函數模板,用于創建一個std::shared_ptr
對象并返回指向其的指針。使用make_shared
可以在動態內存中分配對象的同時,也會分配一個控制塊,用于跟蹤共享指針的引用計數。這樣可以確保在不再需要共享指針時,對象可以被正確地銷毀。
make_shared
的作用是簡化創建std::shared_ptr
對象的過程,同時提供了更高的性能和更好的異常安全性,因為它可以在單個內存分配操作中分配對象和控制塊。這樣可以減少內存碎片和提高程序的性能。