Method Chaining with this

#include <iostream>
using namespace std;

class Counter{
   private:
      int value;
   public:
      Counter() : value(0){
      
      }

      Counter& increment(){
         value +=1;
         return *this;
      }


      Counter& decrement(){
         value-=1;
         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