- lvalue มีที่อยู่ที่โปรแกรมของคุณเข้าถึงได้ ตัวอย่าง lvalue expressions ได้แก่ ชื่อตัวแปร รวมถึงตัวแปร const, องค์ประกอบอาร์เรย์, ฟังก์ชันที่คืน lvalue reference, bit-fields, unions, และ class members
- xvalue (eXpiring value) ไม่มีที่อยู่แต่สามารถใช้ initialize rvalue reference ได้ ซึ่งให้การเข้าถึง expression นั้น ตัวอย่างเช่น ฟังก์ชันที่คืน rvalue reference, array subscript ฯลฯ
- glvalue (generalized lvalue) คือ lvalue หรือ xvalue
- rvalue (รูทค่า) คือ xvalue, temporary object หรือ subobject ของมัน, หรือค่าที่ไม่เกี่ยวข้องกับออบเจ็กต์
- prvalue (pure rvalue) ไม่มีที่อยู่ที่เข้าถึงได้โดยโปรแกรม ตัวอย่าง prvalue expressions ได้แก่ literals, ฟังก์ชันที่คืน non-reference type