Q:

Set values of data members using default, parameterized and copy constructor in C++

belongs to collection: C++ programs on various topics

0

Set values of data members using default, parameterized and copy constructor in C++

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program:

#include <iostream>
#include <string.h>
using namespace std;

class person{
	private:
		char name[30];
		int age;
	
	public:
		//default constructor
		person(){
			strcpy(name,"None");
			age = 0;
		}
		//parameterized constructor
		person(char n[], int a){
			strcpy(name, n);
			age = a;
		}
		//copy constructor
		person(person &p){
			strcpy(name, p.name);
			age =p.age;
		}
		//function to display person details
		void print(void){
			cout<<name<<" is "<<age<<" years old."<<endl;
		}
};

//Main function
int main(){
	//creating objects
	person p1; //default constructor will be called
	person p2("Amit Shukla",21); //parameterized constructor will be called
	person p3(p2); //copy constructor will be called
	
	//printing
	cout<<"object p1..."<<endl;
	p1.print();
	cout<<"object p2..."<<endl;
	p2.print();	
	cout<<"object p3..."<<endl;
	p3.print();	
	
	return 0;
}

Output

 
object p1...
None is 0 years old.
object p2...
Amit Shukla is 21 years old.
object p3...
Amit Shukla is 21 years old.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

C++ programs on various topics

This question belongs to these collections

Similar questions


need a help?


find thousands of online teachers now
Accessing Member Function by pointer in C++... >>
<< Passing an object to a Non-Member function in C++...