*this makes a call to constructor?
<p>Does the operation on "this" pointer calls the constructor ?</p>

<p>I have a constructor defined as follows </p>

<pre><code>    Cents(int cents)
    {
            cout&lt;&lt;"in cents constructor\n";
            m_cents = cents;
    }

    friend Cents operator + (const Cents &amp;c1, const Cents &amp;c2)
    {           
            return Cents(c1.m_cents + c2.m_cents);
    }

    Cents operator ++ (int)
    {
            cout&lt;&lt;"In c++ function\n";
            Cents c(m_cents);
            *this = *this + 1 ;
            return c;
    }
</code></pre>

<p>in main function I have sth like...</p>

<pre><code>    Cents c;
    cout&lt;&lt;"Before post incrementing\n";
    c++; //This part is calling the constructor thrice 
</code></pre>

<p>Now If I am doing some operation like <code>*this = *this + 1</code>. 
It calls this constructor twice.</p>

<p>What exactly is going on here. Does <code>*this</code> creates a temp object and assigns the value to the original object?</p>
