According to the well-known table below, automatic generation of the default copy constructor compiler and copy assignment is deprecated in C ++ 11 when one or more copy instances, copy constructor, and destructor are provided / provided by the user (red cells indicate fatigue). This makes sense in the light of Rule 3. However, the table shows that the default destructor generation is not out of date in the case of a user-created constructor / destination copy.
What is the rationale for this design decision?

source
share