Kha*_*der 2 c++ pointers auto-ptr
我试图找出这段代码打印的内容,但由于某些原因我无法输出它,它给了我一个错误:"1 [main] Q1c 5752 open_stackdumpfile:将堆栈跟踪转储到Q1c.exe.stackdump".
double *dp=new double(1.2);
auto_ptr <double> autodp1(dp);
auto_ptr <double> autodp2=autodp1;
cout<<*autodp1<<endl;
Run Code Online (Sandbox Code Playgroud)
我只是想知道它会打印什么,如果它甚至打印.
注意:这个问题在过去的试卷中,仅供修改.
该代码*autodp1实际上是空指针的解引用.因此代码表现出不确定的行为.
首先构造autodp1指向新分配的double.但是构造函数autodp2为自己获取拥有的内存并设置autodp1为null.