我正在用C ++练习shared_ptr
造成细分错误,但我不知道为什么
如果我在goo()函数中删除了cout行,效果很好
#include <iostream>
#include <memory>
using namespace std;
shared_ptr<int> foo(shared_ptr<int>* param)
{
int* pVar = (*param).get();
cout << "foo: " << (*pVar) << endl;
}
shared_ptr<int> goo(shared_ptr<int> param)
{
cout << "goo: " << endl;
}
int main(int argc, char **argv)
{
shared_ptr<int> ddd1;
int* ddd3 = 0;
{
shared_ptr<int> pVar;;
pVar = make_shared<int>(3);
foo(&pVar);
goo(pVar);
}
}