В C++03 выражение представляет собой либо [b]rvalue[/b], либо [b]lvalue[/b]. В C++11 выражение может быть: [list] [*][b]rvalue[/b] [*][b]lvalue [*]xvalue[/b] [*][b]glvalue[/b] [*][b]prvalue[/b] [/list] Две категории превратились в пять категорий. [list] [*]Что это за новые категории выражений? [*]Как эти новые категории относятся к существующим категориям rvalue и lvalue? [*]Являются ли категории rvalue и lvalue в C++0x такие же, как в C++03? [*]Зачем нужны эти новые категории? Боги WG21 просто пытаются запутать нас, простых смертных? [/list]