IBM interview question

What's a virtual function, why we need it?