O'Reilly logo

Discovering Modern C++: An Intensive Course for Scientists, Engineers, and Programmers by Peter Gottschling

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Appendix C. Language Definitions

This appendix is intended as a reference for definitions relevant to this book.

C.1 Value Categories

C++ distinguishes among different categories of values. The most important are lvalue and rvalue.

Definition C–1 (lvalue). An Lvalue (so called, historically, because lvalues can appear on the left-hand side of an assignment expression) designates a function or an object.

More pragmatically, an lvalue is an entity from which we can get an address. This does not exclude that they may be constant—although this is somewhat inconsistent with the terminology. The reason for this is that early versions of C had no const attribute so all lvalues were allowed on the left side of an assignment.

The counterpart is:

Definition ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required