Monday, November 2, 2009

//Runtime polymorphism c++

#include"iostream.h"
#include"string.h"
#include"conio.h"
class media
{
protected:
char title[50];
float price;
public:
media(char *s,float a)
{
strcpy(title,s);
price=a;
}
virtual void display() { } //empty vitual function
};

class book:public media
{
int pages;
public:
book(char *s, float a, int p):media(s,a)
{
pages=p;
}
void display();
};
class tape:public media
{
float time;
public:
tape(char *s, float a, float t):media(s,a)
{
time=t;
}
void display();
};
void book::display()
{
cout<<"\n Title:"< cout<<"\n Pages:"< cout<<"\n Price:"<}
void tape::display()
{
cout<<"\n Title:"< cout<<"\n Play time:"< cout<<"\n price:"<}
int main()
{
char *title=new char[30];
float price, time;
int pages;

clrscr();

//Books details
cout<<"\n Enter Book Details\n";
cout<<"Title:";
cin>>title;
cout<<"Price :";
cin>>price;
cout<<"Pages:";
cin>>pages;

book book1(title,price,pages);

//tape Details
cout<<"\n Enter Tape Details\n";
cout<<"Title:";
cin>>title;
cout<<"Price:";
cin>>price;
cout<<"Play time (mins):";
cin>>time;

tape tape1(title,price,time);

media*list[2];
list[0]=&book1;
list[1]=&tape1;
cout<<"\n Media Details:";
cout<<"\n.........BOOK........";
list[0]->display();

cout<<"\n.....TAPE.....";
list[1]->display();
getch();
return 0;
}

No comments:

Post a Comment