J'étudie maintenant C++ 11 et je suis confus par la catégorie de valeur des expressions en C++ 11. Selon terminology le Lvalue est le point en haut à gauche du W, c'est-à-dire iM (ou im parfois) signifiant "a identité mais ne peut pas être déplacé de ". Cela me rend vraiment confus. Veuillez prendre en compte l'exemple ci-dessous:Que signifient-ils en ayant une identité mais pas mobile pour Lvalue en C++ 11?
#include <iostream>
int main()
{
int a = 0, b = 1, c = 2;
a = std::move(b = c);
std::cout << a << '\n';
}
Cet exemple a bien été compilé.
Nous savons tous que l'affectation b = c
est une Lvalue alors que signifient-ils par 'ne peut être déplacé de'? Donnez des exemples qui illustrent clairement ceci!
Merci!
[Pourquoi std move est-il nommé ainsi] (https://stackoverflow.com/questions/21358432/why-is-stdmove-named-stdmove) – Caleth