DELHI 2007:
2.a) Differentiate between Constructor and
Destructor function in context of lasses
and Objects Using C++?
2
Ans:
Constructor: A constructor is used to intitialize the objects of that class type with a legal initial value.If a class has a constructor,each object of that class will be initialized before any use is made of the object.
(A member function with the same name as its class is called Constructor and it
is used to initialize the objects of that class type with a legal initial value. )
Destructor: A destructor is used to destroy
the objects that have been created by a
constructor. A destructor destroys the values of the object being destroyed.
2.b) Answer the question (i)and (ii)after going through the following class:
class Maths
{ char Chapter[20]
int Marks;
public:
Maths() //Member Function 1
{ strcpy (Chapter, “Geometry”);
Marks=10;
cout <<”Chapter Initialised “;
}
-Maths() //Member Functions 2
{ cout<<”Chapter Over”;
}
};
Constructor | Destructor |
---|---|
Purpose: Is used to intitialize the objects of that class type with a legal initial value |
Purpose: Is used to destroy the objects that have been created by a constructor |
Name: The name of the class |
Name:The name of the class preceded by a ~. |
Calling: It will be called automatically at the time of creation of the object. Ie Implicite calling |
Calling: It will be called automatically at the time of destruction of an object.Ie mplicite calling |
Return Type: No return type not even
void |
Return Type: No return type not even void |
(i) Name the specific features of class shown by member Function 1 and Member Function 2 in the above example.
2
Ans: Member function 1 is a (nonparameterized or default) constructor (, which will be executed automatically at the time of creation of an object of class Maths).
Member function 2 is a destructor(,which will be executed automatically at the time of destruction of an object of class Maths).
(ii) How would Member Function 1 and Member Function 2 get executed ?
Ans: They will be executed automatically. Member function 1 will be executed at the time of creation of an object of class Maths. Member function 2 will be executed at the time of destruction of an
object of class Maths.
2.c) Define a class Tour in C++ with the description given below.
Private Members:
TCode of type string
No of Adults of type integer
No of Kids of type integer
Kilometers of type integer
TotalFare of type float
Public Members:
TCode with the word “NULL”
No of Adults as 0
No of Kids as 0
Kilometers as 0
TotalFare as 0
Fare(Rs) |
For Kilometers |
---|---|
500 | >=1000 |
300 | <1000 & >=500 |
200 | <500 |
For each Kid the above Fare will be 50% of the Fare mentioned in the above table
For Example: If Kilometers is 850, Noofadults =2 and NoofKids =3 Then TotalFare should be calculated as Numof Adults *300+ NoofKids *150 i.e., 2*300+ 3 *150 =1050
4
Ans:
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<iostream.h>
class Tour
{ char TCode[21];
int NoofAdults,NoofKids,Kilometres;
float TotalFare;
public:
Tour( )
{ strcpy(TCode,"NULL");
NoofAdults=NoofKids=Kilometres=TotalFare=0;
}
void AssignFare( )
{ if(Kilometres>=1000)
TotalFare=NoofAdults*500+NoofKids*250;
else if(Kilometres>=500)
TotalFare=NoofAdults*300+NoofKids*150;
else
TotalFare=NoofAdults*200+NoofKids*100;
}
void EnterTour( )
{ cout<<"\nEnter the Tour Code: ";
gets(TCode);
cout<<"\nEnter the Number of Adults: ";
cin>>NoofAdults;
cout<<"\nEnter the Number of Kids: ";
cin>>NoofKids;
cout<<"\nEnter the Number of Kilometres: ";
cin>>Kilometres;
AssignFare( );
}
void ShowTour( )
{ cout<<"\nThe Tour Code: "<<TCode;
cout<<"\nThe Number of Adults:” <<NoofAdults;
cout<<"\nThe Number of Kids: "<<NoofKids;
cout<<"\nThe Number of Kilometres: “ <<Kilometres;
cout<<"\n\nThe Total Fare: "<<TotalFare;
}
};
void main( )
{ clrscr();
Tour T;
T.EnterTour( );
T.ShowTour( );
getch();
}
CBSE Computer Science Solved Revision Tour By Mr. Ravi Kiran ( [email protected] )