jbc*_*coe 2 c++ stack destructor
C++如何确保为堆栈分配的对象调用析构函数?当我分配动态内存时,析构函数(或指向它的指针)会发生什么,如下所示:
class MyClass {
public:
~MyClass()
{
std::cout<<"Destructor called."<<std::endl;
}
MyClass()
{
std::cout<<"Constructor called."<<std::endl;
}
};
....................................................................
//Limit scope for example
{
MyClass instance;
}
Run Code Online (Sandbox Code Playgroud)
构造函数和析构函数都被调用.这里发生了什么?