Pointer Danger
Danger awaits those who incautiously use pointers. One extremely important point is that when you create a pointer in C++, the computer allocates memory to hold an address, but it does not allocate memory to hold the data to which the address points. Creating space for the data involves a separate step. Omitting that step, as in the following, is an invitation to disaster:
long * fellow; // create a pointer-to-long*fellow = 223323; // place a value in never-never land
Sure, fellow
is a pointer. But where does it point? The code failed to assign an address to fellow
. So where is the value 223323
placed? We can’t say. Because fellow
wasn’t initialized, it could have any value. Whatever that value is, the program interprets ...
Get C++ Primer Plus 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.