Appendix C
Language Definitions
“Language is a tool adequate to provide any degree of precision relevant to a particular situation.”
—Kenneth L. Pike
This appendix is intended as a reference for definitions relevant to this book.
C.1 Value Categories
C++ distinguishes between different categories of values. We focus here on lvalues and rvalues and have adapted the definitions from the ISO standard [38] accordingly.
Definition C–1. (lvalue). An lvalue is an object, bit-field, function.
More pragmatically, an lvalue is or refers to an entity that has a name which allows us to determine its address with the address operator &
. This rule is more generally applicable than we might think. Even a function whose code is substituted for each call of ...
Get Discovering Modern C++, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.