1) What is a virtual function
2) What is the difference between vector and list
3) What is multiple inheritance and what are its pros and cons
4) What is the difference between reference and pointer
5) What is caching and what are the issues that you should be aware of when implementing caching.