I occasionally inherit from collection types simply as a better way to name types.
I don't like typedef
as a matter of personal preference. So I will do something like:
class GizmoList : public std::vector
{
/* No Body & no changes. Just a more descriptive name */
};
Then it is much easier and clearer to write:
GizmoList aList = GetGizmos();
If you start adding methods to GizmoList instead, you may well run into trouble.