Method Chaining with this

#include <iostream>
using namespace std;

class Counter {
private:
   int value;
public:
   Counter() : value(0) {}
   Counter & increment() {
      value++;
      return *this;
   }
   Counter & decrement() {
      value--;
      return *this;
   }
   int getValue() const {
       return value;
   }
};

int main() {
   Counter c;
   // example chain of calls
   c.increment().increment().decrement();
   cout << c.getValue();
   return 0;
}
Upvote
Downvote
Loading...

Input

Expected Output

1