When should you use a class vs a struct in C++?
What is the difference between old style and new style classes in Python?
Are static class variables possible?
What is a smart pointer and when should I use one?
When should static_cast, dynamic_cast, const_cast and reinterpret_cast be used?
Interface vs Abstract Class (general OO)
What is the difference between an interface and abstract class?
Why not inherit from List<T>?
Why should I use a pointer rather than the object itself?