If you want to learn advanced C++, then you need to practice, practice, practice. C++ is not a language that is easily learned through theory alone. When I learned C++ back in the day, the best resource that I used while writing, messing up, and then rewriting again was the
The C++ Programming Language by Bjarne Stroustrup[
^].
This, in my humble opinion, is the best raw C++ book out there because it focuses on the language, not the other libraries that have been built on top of the language. My philosophy is to learn the language first, then the other libraries like MFC, etc...