Joã*_*ulo 1 c++ smart-pointers
为什么下面的代码不起作用?
class A {};
void f(A* a) {
shared_ptr<A> c(a);
}
int main() {
auto a = make_shared<A>();
auto b = a.get();
f(b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在范围的最后f,我的程序崩溃了.可能是什么导致了这个?有什么东西试图被删除而且不存在吗?