overloading is when you have a different signature with the same name. virtual => overriding, when they have the same signature. overriding is generally determined at runtime.
there is no important specific to c++. you can do it in java or c# or any other OOPL if you dont like c++
just google polymorphism. a lot of people have explained it better than i'm going to in this post.
This post was edited by carteblanche on Apr 14 2013 07:31am