Increment counter variable with ++ operator, return value - C++ Class

C++ examples for Class:Operator Overload

Description

Increment counter variable with ++ operator, return value

Demo Code

#include <iostream>
using namespace std;
class Counter// w w w . jav a  2s. co  m
{
   private:
       unsigned int count;      //count
   public:
       Counter() : count(0)     //constructor
       {  }
       unsigned int get_count() //return count
       { return count; }
       Counter operator ++ ()   //increment count
       {
          ++count;              //increment count
          Counter temp;         //make a temporary Counter
          temp.count = count;   //give it same value as this obj
          return temp;          //return the copy
       }
};
int main()
{
   Counter c1, c2;                       //c1=0, c2=0
   cout << "\nc1=" << c1.get_count();    //display
   cout << "\nc2=" << c2.get_count();
   ++c1;                                 //c1=1
   c2 = ++c1;                            //c1=2, c2=2
   cout << "\nc1=" << c1.get_count();    //display again
   cout << "\nc2=" << c2.get_count() << endl;
   return 0;
}

Result


Related Tutorials