什么是非平凡(nontrivial)的析构函数?

class Test
{
int* p;
}
这时析构函数就不能是trivial的,因为它必须把p申请的内存释放掉!

而如果
class Test
{
int p;
}
析构函数可以什么也不做,就是trivial的。

nontrivial需要你自己负责处理的一些问题,诸如内存的释放。因为编译器产生的析构函数
只是满足编译器的需要,而不是程序的需要。所以对于程序所需要的功能,需要你自己来处理。

你可能感兴趣的:(语法函数,c/c++,数据结构与算法)