
José Tomás Tocino García wrote:
So far, the libraries I'm sure I'm going to teach are: smart pointers, lexical_cast, bind and function, ref, hash and unordered containers. I'd also add strings algorithms, maybe regex and/or tokenizer. I'm not sure about «program options».
You've covered my top choices in the above. But you might consider presenting Phoenix with/instead of bind. The creation of lazy functors is hugely useful -- my code is full of bind() calls -- and the use of operator overloading in lambda and Phoenix is mind-blowingly cool when you first encounter it. For "interesting," consider also Spirit Qi. The ability to write a parser in (a close approximation of) BNF inline in your C++ source definitely stretched my sense of what's possible with the language.