Копирование и перемещение конструкторов, а также копирование и перемещение операторов назначения должны быть объявлены защищенными или определены «= delete» в базовом классе
Копирование и перемещение конструкторов, а также копирование и перемещение операторов назначения должны быть объявлены защищенными или определены «= delete» в базовом классе.
Указатели на производные классы совместимы с указателями на базовые классы. Указатель может быть объектом базового класса, указывая при этом на объект производного класса. Когда такой объект копируется, вызывается конструктор базовой копии, и скопированный объект имеет только базовую часть исходного объекта. Чтобы избежать непреднамеренного нарезания во время копирования и перемещения, подавьте эти операции в базовом классе путем:
Объявление копирования и перемещения конструкторов и копирование назначений и перемещение операторов назначения как protected.
Определение копирования и перемещения конструкторов и копирования назначений и перемещения операторов назначения как "=delete".
Polyspace® помечает эти специальные представителей функции базового класса, когда они не объявлены protected или определяется как =delete:
Копировать конструктор
Переместить конструктор
Оператор копирования назначения
Оператор переноса назначения
Polyspace указывает, какая функция специального представителя нарушает это правило.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
| Группа: Специальные функции представителей |
| Категория: Необходимый, Автоматизированный |