cout << "析构the end!"<system("pause");
如上,把system("pause");加到析构函数的最后。
因为在main()函数中声明的类对象,其析构是在调用了main的return之后才发生的,所以在main()中是捕捉不到的,只有在析构函数才行。
单独写个调用函数,可以看到析构函数的执行结果。
在main函数前编写
void funcTestIntArray()
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
IntArray arr1(10), arr2(a,5),arr3(arr2);
arr1.printAll();
arr2.printAll();
arr3.printAll();
}
把main函数改为
int main()
{
funcTestIntArray();
system("pause");
return 0;
}
你可以在析构函数内随便放一句,然后加入断点进入debug看。