Write a program to create class “Counter” having integer data member, overload the post increment, post decrement, pre increment and pre decrement for the class “Counter”.

Sep 15, 2018

Program:

// program to demeonstrate the unary operators
#include<iostream>
using namespace std;

class Counter{
	private:
		int number;
	public:
		Counter(int n = 0){
			number = n;
		}
		// function declarations for the operator overloading
		Counter operator ++(); //declaration for pre increment
		Counter operator ++(int); //declaration for post increment
		Counter operator --();
		Counter operator --(int);
		// function to display the cout
		void display();
};
// function definations
Counter Counter::operator ++(){
	return Counter(++number);
}
Counter Counter::operator ++(int){
	return Counter(number++);
}
Counter Counter::operator --(){
	return Counter(--number);
}
Counter Counter::operator --(int){
	return Counter(number--);
}
void Counter::display(){
	cout<<"number:"<<number<<endl;
}
// main program
int main(){
	Counter c1,c2(10),c3,c4;
	cout<<"Before pre increment for c1:"<<endl;
	c1.display();
	++c1;
	cout<<"After pre increment for c1:"<<endl;
	c1.display();
	cout<<"Before post increment for c1:"<<endl;
	c1.display();
	c3 = c1++;
	cout<<"After post increment for c1:"<<endl;
	c1.display();
	cout<<"Value of c3:"<<endl;
	c3.display();
	cout<<"Before pre decrement for c2:"<<endl;
	c2.display();
	--c2;
	cout<<"After pre decrement for c2:"<<endl;
	c2.display();
	cout<<"Before post decrement for c2:"<<endl;
	c2.display();
	c4 = c2--;
	cout<<"After post decrement for c2:"<<endl;
	c2.display();
	cout<<"Vaue of c4:"<<endl;
	c4.display();
	return 0;
}

 

Sample output: please analyze the output to understand the concept.

Before pre increment for c1:
number:0
After pre increment for c1:
number:1
Before post increment for c1:
number:1
After post increment for c1:
number:2
Value of c3:
number:1
Before pre decrement for c2:
number:10
After pre decrement for c2:
number:9
Before post decrement for c2:
number:9
After post decrement for c2:
number:8
Vaue of c4:
number:9

 

Related


16 Default arguments in C++
Date: Sep 2, 2018
17 Friend Function, Friend class
Date: Sep 4, 2018
18 What are friend functions ? Is it possible for a function to be friend of two classes ? If yes then how is it implemented in C++. Explain with suitable example. ---PU-2016 (New Course)
Date: Sep 10, 2018
19 Write an OOP to add two complex numbers using passing objects as arguments. ---PU_2015
Date: Sep 10, 2018
20 Write a Program to add two complex numbers using friend function. ----PU_2015
Date: Sep 10, 2018
21 What are constructors and destructors ? Write a Object Oriented Program to display Fibonacci series (Use constructor for initialization) ----PU-2014
Date: Sep 15, 2018
22 Write a OOP to create a class named "Time" with data members 'hour' and 'minute' a constructor to initialize............. ---PU-2011
Date: Sep 15, 2018
23 What is "this" pointer ? Illustrate with example.
Date: Sep 15, 2018
24 Write a program to create class “Counter” having integer data member, overload the post increment, post decrement, pre increment and pre decrement for the class “Counter”.
Date: Sep 15, 2018
25 Write a Program to overload the unary minus operator using friend function.
Date: Sep 15, 2018
26 Write a OOP to overload "==" operator to determine the equality of two fractional numbers (fractional numbers must be in terms of numerator and denominator)
Date: Sep 15, 2018
27 Write a program to create classes “Dollar” and “Rupee”. Write conversion routine to convert dollar to rupee (1 dollar = 108 rupees).
Date: Sep 15, 2018
28 Write a Program to convert angle in degree to angle in radian. where, angle in radian = angle in degree * PI/180. Use Conversion routine in source class.
Date: Sep 15, 2018
29 Write a program which asks file name from keyboard, opens a file with that name for output, reads the line from keyboard character by character and writes the line onto the file.
Date: Sep 22, 2018
30 WAP to to read the text from the file named "hello.txt" to the file name called "test.txt".
Date: Sep 22, 2018

Tools/Apps





© Nepal Exchange Rates