Когато декларираме член с данни с същото име в клас, както и функционалния параметър в рамките на същия клас, ние използваме "this->", за да посочим мястото в паметта на класа. Това, което ме обърква, е: да кажем, че декларираме член с данни, наречен "meloncolor", и след това декларираме в рамките на класа функционален параметър със същото име, като например:
class fruitcolor{
public:
string meloncolor;
void changefruitcolor(string meloncolor)
{ this-> meloncolor = meloncolor }
};
Да кажем, че нашият обект се съхранява на място в паметта 0xblahblahblah, така че и двата члена/променливи на данни „moloncolor“ трябва да са на едно и също място? Ако е така, как програмата/компютърът се разграничава един от друг, след като посочи адреса на класа, използвайки "this->", ако те се съхраняват на едно и също място?