but I defined them The ISO C++ Standard specifies that all virtual methods of a class that are not pure-virtual Note that a destructor must be defined even if it is declared pure-virtual [class.dtor] 简单来说,C++标准规定: