• Advertisement
Sign in to follow this  

Dereference operator C++

This topic is 4360 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

hi, I got a question, what does it mean when the * is used twice. for example ** what does that mean?

Share this post


Link to post
Share on other sites
Advertisement
It dereferences the results of the previous dereference.

int a;
int* pa = &a;
*pa == a;
int** ppa = &pa;
*ppa == pa;
**ppa == *pa == a;


*edit: Naturally, you can do this indefinately.

int*** pppa = &ppa;
*pppa == ppa;
**pppa == *ppa == pa;
***ppa == **ppa == *pa == a;

However, think long and hard if you ever find yourself needing more than two dereferences at a time. There's a chance something is more complicated than it needs to be.

CM

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement