Just wondering ...
So, I have as a task to "look through the STL found on http://www.sgi.com/tech/stl/table_of_contents.html" and then I started wondering, is there anyone here who's capable of memorizing the whole STL right as you read this?
I just really hope it isn't a required thing to remember it as I forget worse than a goldfish
I'm sure there's people capable of memorizing the entire thing, especially if they've had years of C++ experience. The majority won't remember it their first time, and will learn bits and pieces as they go along, only remembering it when they find it useful. I don't see how memorizing it is required, but it's fairly common sense if you remember more, have more knowledge, you'll probably produce better code and it should be easier. Reading an STL book should improve your chances of remembering the important concepts. It also serves as a good reference. Most programmers have references, so they don't have to remember everything, especially since most cannot.
P.S. I don't know half of the STL details. It's just one of those questions you don't understand why it's a question at all. It would depend more on the requirements of whomever gave you this task. I can't see someone expecting much from a person told to look through it.
As Dae mentions it really isn't a requirement. Neither it is possible for most programmers. We just keep our books, websites and other references at hand.
As you gain experience some of this will eventually find a room in your head. Much won't, and that's just as well. You don't need to memorize anything. Understanding the language rules, its various constructs and how they fit together, and knowing all about good and bad code practices and when to apply each of them (yes, bad code practices may be needed sometimes) is a lot more important.
Ironically, that's the hardest part of learning how to program. Your experience is measured exactly by this. And not by reciting the STL by heart.
There is a lot of speed, quick, fast, optimized, blah blah blah reading technique books available which also improving your memorization.
The hardest part in programming is deciding of what your program will be.
Originally Posted by Mario F.
The important to know what is in the STL, and what are it's capabilities and conventions.
It is not important to memorize the specific order of function parameters.
Is this going off on a tangent day?
Originally Posted by audinue
No one told me.
This GameInstitute.com book just told me to look through Table of Contents: the Standard Template Library since the book couldn't cover all of STL in one chapter or something
If you're looking to learn to use the STL, I recommend The C++ standard library by Nicolai Josuttis. It's a thick textbook size book, but worthy for both reading and as a reference later.
Memorizing the STL has little or no merit to me. You can have MSDN or your help file of choice open all the time on your desktop while programming so it's a snap to look up some obtuse STL function or some STL container that you don't often use.
It's more important you understand the concept of what is behind the STL and how, when, and why you should use it.