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 MEMORYof 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 dereferencedwithout using any particular operator||the address must be dereferenced using the * operator|