Advertencia C26478
No use
std::move
en variables constantes. (es.56)
Comentarios
Esta advertencia es indicar que el uso de std::move
no es coherente con cómo std::move
se pretende usar.
Dado que const
los objetos no se pueden mover, llamar a std::move
en ellos no tiene ningún efecto. Este patrón puede dar lugar a copias no deseadas.
Nombre de análisis de código: NO_MOVE_OP_ON_CONST
Ejemplo
struct node
{
node* next;
int id;
};
void foo(const node& n)
{
const node local = std::move(n); // C26478 reported here
// ...
}
Para corregir el problema, quite el redundante std::move
.
Consulte también
ES.56: escribir std::move()
solo cuando necesite mover explícitamente un objeto a otro ámbito