reference vs. pointer
2011-04-09
In Software Engineering Project course we need to learn some C++ to develop the project. A question that some programmers have when passing from Java to C++ (like me) is “Which are the differences between pointers and references?”. You can find a lot of answers around developers forum, but I summarized them in the following table. Glad if you found it useful!
is an object which **IS AN ALIAS** for another object | is an object that** CONTAINS THE ADRRESS IN MEMORY**of another object |
the preferred way of undirectly access objects | you should use it just if you really need it, as it lets you to work in a lower level than a reference does |
keeps your code clear | the code is less clear but still understandable |
it must be initialized when created | you don't have to initialize it when declared |
it references to the one object and only that one, therefore you **can not modify the address referenced** | because it contains an address, it can point to many different objects during lifetime. The **address can be manipulated** |
when used, the **address is dereferenced**without using any particular operator | the **address must be dereferenced** using the * operator |
I do not use a commenting system anymore, but I would be glad to read your feedback. Feel free to contact me.