   STD::List or STD::Vector
  So,  I have a function Im making that does the following: When an object is asked for, check to see if it has an image associated with it. If it doesnt, load the image(s) (for animation) into a container. If object is staitionary stay on image #0 in the container. If object is moving loop through image #1 - image #however many frames of animation there are. There will be probably about 5 different objects in this small game Im working with. Because Ill be putting pointers to the sprites in this container to call up whenever an animation is starting or if the sprite is stationary, the container would end up looking something like |---Object 1---|---Object 2---|-----Object 3-----|---Object 4---|*0, 1, 2, 3, 4****5, 6, 7, 8****** 9, 10, 11, 12******13, 14, 15======Above are number of sprites per object for animation=======\\\\\\\\\\\\\\\\\\\\\\Entirety = Container////////////////////////So if I want to draw Object 1 I would call it up draw.(container[0])and if I wanted to animate itfor(i = 1, i < &framenumbers, i++){    draw.container;    update.container;    clear.container;}But say the state suddenly changes and the objects were loaded out of order so I had to jump from Object State 1 (Object 1) to Object State 2 (Object 3)Id have to randomly access it. Instead of looping through Object 2 to get to Object 3 I should be able to just automatically go to Image 9 (pointer 10) in the container to start animating Object 3. Because I'll only be loading into the container ONCE only IF the object doesn't have the image that its assigned to loaded yet, I'm thinking that I should go with a vector container. Am I correct in thinking this or should I go with STD::List for some reason that I'm not aware of? From my understanding STD::List is slower to access randomly. The only benefit that I could think of is the faster insertion but since I'm doing a one-time load I think it shouldn't be an issue. Thoughts?
  You have access to a feature of C++ (classes) that allows to represent your objects as language entities, instead of high-level concepts. Instead of having an array or list of images, where images are grouped as objects,  store an array or list of objects, where each object contains its associated images (an image for its stationary state, plus an array or list for its moving state).class Object {  Image* stationary;  std::vector<Image*> movement;public:  // Constructor, functions for loading images and handling animation.};std::list<Object> objects;There is really no reason (or excuse) for representing this as a single container, be it a list or a vector.   ;  oh wow that makes way more sense than what I was going about doing. That's extremely helpful. Thanks a ton!!   