析构函数一般都会定义为虚函数