0

SOURCE CODE

#include<iostream>
using namespace std;
class Counter
{
private:
  int value;
public:
  Counter()
  {
    value = 0;
  }
  Counter(int val)
  {
    value = val;
  }

  int getCounter()
  {
    return value;
  }

  void operator ++()
  {
    value = value + 1;
  }

  void operator --()
  {
    value = value - 1;
  }

};


int main()
{
    Counter counter1;        //calls no argument constructor
    Counter counter2(1);     //calls one argument constructor

    cout<<"Counter 1 initially = "<<counter1.getCounter()<<endl;
    cout<<"Counter 2 initially = "<<counter2.getCounter()<<endl;
    //Incrementing counter
    ++counter1;
    counter2++;

    cout<<"Counter 1 after incrementing = "<<counter1.getCounter()<<endl;
    cout<<"Counter 2 after incrementing = "<<counter2.getCounter()<<endl;

    //decrementing counter
    --counter1;
    counter2--;

    cout<<"Counter 1 after decrementing = "<<counter1.getCounter()<<endl;
    cout<<"Counter 2 after decrementing = "<<counter2.getCounter()<<endl;

    return 0;
}

Every time I run the program,the following ERROR comes up:

**no 'operator++(int)' declared for postfix '++' [-fpermissive]

no 'operator--(int)' declared for postfix '--' [-fpermissive]**

if anyone can fix the bug, please help.

0 Answers0