根据Google C++ Style Guide - Static and Global Variables,
销毁决定
...
因此,我们只允许具有静态存储持续时间的对象,如果它们可以轻易破坏。常见模式
...
- 映射、集合和其他动态容器:...如果您确实更喜欢标准库中的动态容器,请考虑使用函数局部静态指针,如下所述。
- 如果所有其他方法都失败了,您可以使用函数局部静态指针或引用(例如,
static const auto& impl = *new T(args...);
)动态创建一个对象并且永远不要删除它。
据我所知,动态分配的对象永远不会被释放。
当程序结束时,操作系统将释放每个未释放的对象,但这不是正确的方法。
为什么不删除动态分配的对象是一个可选选项?