The complete guide to a C++ raw pointer

(Last Updated On: May 17, 2010)

The complete guide to a C++ raw pointer
SomeClass *ptr=SomeClass();
SomeClass *ptr=SomeClass;

These two definitions are equivalent. Pointers can be slow and can be harder to debug pointer airthmatic code and data involving multiple pointers. Always set pointers to null after freeing otherwise your check for p != NULL will be useless which could cause memory corruption.
A dangling pointer arises when you the address of a pointer after its lifetime is over. This occurs when you are returning addresses of automatic variables from a function or using the address of a memory block that been freed.
The following code will not generate any errors unless indicated in the comments:

using namespace std;

class base {
int i;
void set_i(int x) { i = x; }
class derived: base {};

int main() {
//this does not generate error
/* int *p,*q;
cout<<"p"<FACEBOOK ACCOUNT and TWITTER. Don't worry as I don't post stupid cat videos or what I eat!

Subscribe For Latest Updates

Sign up to best of business news, informed analysis and opinions on what matters to you.
Invalid email address
We promise not to spam you. You can unsubscribe at any time.


Check NEW site on stock forex and ETF analysis and automation

Scroll to Top