On Feb 23, 1:28 pm, "i" <imhskala...@yahoo.co.in> wrote:
What is polymorphism?
Maybe you could search for this question as is on google and am quite
sure you'll get the answer!
Polymorphism literally means: taking many forms
consider this example: (a rough outline, ignore specifics of C++)
Class Account is the parent of Class SavingsAccount and Class
CurrentAccount:
You can do this:
Account acc1=new SavingsAccount(); }...(X)
Account acc2=new CurrentAccount(); }
you have basically "upcasted" the objects of SavingsAccount and
CurrentAccount to that of type Account. When you call a function say
acc1.updateSavingsBalance(); which is in the class SavingsAccount,
you'll need to downcast to the appropriate subclass.
(SavingsAccount)acc1.updateSavingsBalance();
You may wonder why do I want to do such a thing as in (X)...lets say
you have a function adds interest to an account irrespective of the
account type:
addInterest(Account account)
{
//add interest
}
you just need to pass the base class reference and use polymorphism as
described above to add interest to the subclass. It's better
programming practice rather than creating an overloaded function for
each of the subclasses!!
Reading any text on C++ (or any OOP language for that matter) will
help you understand polymorphism.
Regards,
Nupul
Can we create child class for the parent class? in c++. It is