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


31 Write a program to enter the name and salary for a number of employees, store them all in a file, and finally search and display the salary...............
Date: Sep 22, 2018
32 Write a program, using a class to read the contents of the text file and convert all upper case letters to lower case and vice-versa and write the result in to another file.
Date: Sep 22, 2018
33 Write a program to enter the id and price of a number of products, store them all in a user defined file, and search the product when particular id is entered.
Date: Sep 22, 2018
34 Write a program using class template to sort two lists of numbers, one integer list and another floating point list.
Date: Sep 23, 2018
35 Write a program using function template to sort two lists of numbers, one integer list and another floating point list.
Date: Sep 23, 2018
36 Write a program using function template to find the sum of first and last element of an array.
Date: Sep 23, 2018
37 Write a template function to find the maximum number from the template array of size N.
Date: Sep 23, 2018
38 Write a function template to swap the numbers.
Date: Sep 23, 2018
39 Write a program using class template to swap two set of numbers.(one integer set and another floating point set)
Date: Sep 23, 2018
40 Exception handling in C++
Date: Aug 11, 2019
41 Explain the concept of encapsulation and information hiding In an object oriented paradigm with the help of an example.
Date: Sep 2, 2019
42 Write a program to find sum of first and last element of an array demonstrating use of new and delete operator.
Date: Sep 2, 2019
43 Write a program to compare two integer numbers and two single character using function overloading.
Date: Sep 2, 2019
44 Write an oop to create a class named “Time” with data objects and two member functions to add two member functions to add two times and display the resultant time.
Date: Sep 2, 2019
45 Write a program to define a class “string” using constructor initialize two string objects with given strings and write necessary functions to concatenate and display the strings.
Date: Sep 2, 2019

Tools/Apps





© Nepal Exchange Rates