I think default is better to prevent someone from removing it because he thinks that the destructor isn't needed. Classes with unique_ptr need a destructor to avoid this deletion of incomplete class error