全局范围内的智能指针

Ali*_*min 5 c++ smart-pointers

我的 cpp 文件(全局变量)顶部有这个智能指针:

std::unique_ptr<DATA_READ> smartPT(new DATA_READ);
Run Code Online (Sandbox Code Playgroud)

如果智能指针在全局范围内声明会发生什么?我知道函数中的智能指针会在函数结束后自动删除和释放内存,但是在多个函数中使用的全局范围智能指针怎么样?

小智 1

它将在程序终止期间释放分配的内存。然而,将智能指针作为全局变量并不是一个好主意。