No, but love the Q.Q, it's been so long since I've seen someone use that emoticon, I've only seen it twice (including yours) outside of an FPS called Soldier Front, heh, not a friendly community to say the least.
Why don't you start coding something related to memory, do you know pointers inside-out? the c++ standard for bit/byte sizes of all built in data types? can you make a dynamic memory factory? or construct your own double linked list (because C++ uses a single linked list, so it's nicer if you don't re-implement something that's already available in the stl)
what? I could of sworn they were single linked lists ._. but checked again and you're right, they are, odd, I don't know why I thought they were single...
This is a very very vague question.
First of all I should say that optimization on language level is secondary. Algorithmic optimization always comes first. I mean no matter how optimized is your implementation of bubble sort is it will never (except tiny arrays) be faster than heap sort or quick sort. An excellent book on this topic is this one: http://www.amazon.com/Introduction-Algorithms-Thomas-H-Cormen/dp/0262033844
and you should probably start with this if you think of optimizing anything.
But of course there's much more than that - understanding the CPU pipeline (instruction counts for memory access, branch prediction, several levels of cache), optimizing code for multi-core architectures (including GPU's with CUDA/DirectCompute/OpenCL) and much much more. There is no single book (AFAIK) that will allow you to always write optimal code.
And there's even more than that - are you sure you need optimization in a particular place (finding a bottleneck is important), is it worth to trade programming effort for gaining 0.1% faster and 0.3% less memory consuming code? What about that code being cross-platform? Are you willing to support several versions for different platforms? What about code maintenance? Do you wish to write part of code in assembly just to win several cpu cycles?
Sometimes the answer to these questions is "yes", but it is very very application dependent and no book would be able to give you a general advice on that.