I made a simple class to represent a door. To return the variables, I'm accessing them with the this
pointer. With respect to just accessing variables, what's the difference between accessing them with the this
pointer and without?
class Door
{
protected:
bool shut; // true if shut, false if not shut
public:
Door(); // Constructs a shut door.
bool isOpen(); // Is the door open?
void Open(); // Opens the door, if possible. By default it
// is always possible to open a generic door.
void Close(); // Shuts the door.
};
Door::Door()
{}
bool Door::isOpen()
{
return this->shut;
}
void Door::Open()
{
this->shut = false;
}
void Door::Close()
{
if(this->isOpen()) this->shut = true;
}
There may or may not be a difference here, but what about for more complex classes?