4.3. Constructors

C++ programs create variables and allocate memory several ways. Variable definitions, for instance, allocate memory from the system stack or data area. Function calls with arguments allocate stack memory for local function parameters. Operator new allocates memory from free store at run time. Allocating memory and initializing built-in data types (int, char, long, float, char *, for example) are straightforward since the compiler always “knows” the size of these types at compile time. Likewise, the compiler determines the amount of memory for structures and arrays from the size of each structure member or array element.

What about user-defined objects? Unlike built-in types, user-defined objects must perform their own initializations. ...

Get Navigating C++ and Object-Oriented Design 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.