现在,我的 C++ 项目中的对象所有权/删除是手动跟踪的(主要通过注释)。几乎每个堆分配的对象都是使用各种工厂创建的
例如
auto b = a->createInstanceOfB(); //a owns b
auto c = b->createInstanceOfC(); //b owns c
//auto k = new K(); //not in the code
...
//b is no longer used..
a->destroyInstanceOfB(b); //destroyInstanceOf calls delete on it
在这种情况下,智能指针会提供什么好处(如果有的话)?