Referência Rvalue é tratada como um Lvalue?

Eu postei esta resposta:https://stackoverflow.com/a/28459180/2642059 Que contém o seguinte código:

void foo(string&& bar){
    string* temp = &bar;

    cout << *temp << " @:" << temp << endl;
}

Ébar um rvalue ou um lvalue?

Eu pergunto porque obviamente não posso usar o endereço de um rvalue, mas posso usar o endereço de uma referência de rvalue, como é feito aqui.

Se você pode executar qualquer operação em uma referência rvalue, em uma referência lvalue, qual é o ponto de diferenciar os dois com o "&&" em vez de apenas um "&"?

questionAnswers(4)

yourAnswerToTheQuestion