exponenta event banner

Операция перемещения для объекта const

std::move вызывается функция с объявленным объектом const или const&

Описание

Этот дефект возникает, когда std::move вызывается функция с объявленным объектом const или const&.

Риск

Для объектов, объявленных const или const&, в отличие от ожидаемого, конструктор копирования вызывается вместо конструктора перемещения.

Зафиксировать

Избегайте вызова std::move функция на const объекты. Если требуется выполнить операцию перемещения, приведите const объект для объекта, не являющегосяconst один, а затем переместить не -const объект.

Обратите внимание, что эта проблема может также вызвать проверку Const std::move input may cause a more expensive object copy. Если вы решите обосновать проблему, вы можете использовать одно и то же обоснование для обоих результатов.

Информация о результатах

Группа: Программирование
Язык: C++
По умолчанию: Вкл для рукописного кода, выкл для сгенерированного кода
Синтаксис командной строки: MOVE_CONST_OBJECT
Воздействие: Высокое
Представлен в R2020a