1.销毁对象时将调用析构函数
eg:
Circle c1 = new Circle();
delete c1;
2.显性调用析构函数
3.对象的作用域最后调用
eg:
void f()
{
print("");
//这里是结尾,在这里调用
}