Aracılığıyla paylaş


Uyarı C26478

Sabit değişkenlerde kullanmayın std::move . (es.56)

Açıklamalar

Bu uyarı, kullanımının std::move kullanım amacıyla std::move tutarlı olmadığını belirtmektir.

const Nesneler taşınamadığından, bunlar üzerinde çağrılmasının std::move hiçbir etkisi yoktur. Bu desen istenmeyen kopyalara neden olabilir.

Kod analizi adı: NO_MOVE_OP_ON_CONST

Örnek

struct node
{
    node* next;
    int id;
};

void foo(const node& n)
{
    const node local = std::move(n); // C26478 reported here
    // ...
}

Sorunu düzeltmek için yedekli std::moveöğesini kaldırın.

Ayrıca bkz.

ES.56 - Yalnızca bir nesneyi açıkça başka bir kapsama taşımanız gerektiğinde yazın std::move()