我正在使用vector的shared_ptr进行测试。目的很简单,我想返回一个vector的指针并访问其中的值。但它给出了例外。“未处理的异常在.. std:out_of_range 在内存位置..”。我正在使用 Visual Studio 2012。
vector<int>* func()
{
boost::shared_ptr<vector<int> > vec(new vector<int>());
vec->push_back(123);
return vec.get();
}
int _tmain(int argc, _TCHAR* argv[])
{
vector<int>* result = func();
cout << result->at(0); // ERROR here
return 0;
}