Upozornění C26478
Nepoužívejte
std::move
u konstantních proměnných. (es.56)
Poznámky
Toto upozornění znamená, že použití není konzistentní s tím std::move
, jak std::move
se má použít.
Protože const
objekty nelze přesunout, volání std::move
na ně nemá žádný vliv. Tento vzor může vést k nechtěným kopiím.
Název analýzy kódu: NO_MOVE_OP_ON_CONST
Příklad
struct node
{
node* next;
int id;
};
void foo(const node& n)
{
const node local = std::move(n); // C26478 reported here
// ...
}
Pokud chcete tento problém vyřešit, odeberte redundantní std::move
.