How to overload post-decrement operator using non-member or free function in C++?

Post-decrement operator overloading in C++: Using C++ program, here we will learn how to overload post-decrement operator using non-member or free function?

Prerequisite: operator overloading and its rules

Here, we are going to implement a C++ program that will demonstrate operator overloading (post-decrement) using non-member or free member function.

Note: This type of non-member function will access the private member of class. So the function must be friend type (friend function).

Consider the program:

using namespace std;
#include <iostream>

//Sample class to demonstrate operator overloading
class Sample
	//private data members
	int value;
	//Parameterized constructor
	Sample(int c)
	{ value = c;}      

	//making operator overloading declaration as 
	//friend function
	friend Sample operator--(Sample &S, int);

	//printing the value
	void printValue()
		cout<<"Value is : "<<value<<endl;

//overator overloading function definition
Sample operator--(Sample &S,int)
	return S;

//main program
int main()
	int i = 0;
	//object declaration
	//with parameterized constructor calling
	Sample S1(100);


	return 0;    


Value is : 99
Value is : 98
Value is : 97
Value is : 96
Value is : 95

Comments and Discussions!

Load comments ↻

Copyright © 2024 All rights reserved.