C++ programming book with best practices

Hello, I am a fairly decent programmer looking to deepen my understanding of c++. Technically I am a freshman in college however I have been coding for quite awhile and have worked some jobs and shipped some projects with code that I wrote.

I even at one point somehow managed to create a simple graphics application in c++.

My problem is I don't KNOW c++ very intimately. I have to google things so frequently and the answers I get sometimes don't satisfy me.

While I understand classes and objects in other languages I run into all sorts of strange issues in c++ with include statements and whenever I try to create static methods or interfaces it always goes bad. I need explanation on what is going on when these sorts of things are coded.

I realize this has sort of been asked a few times already but what book would you recommend for learning c++ at a deeper level that is situated for a more experienced coder? I really want to dive in to the performance and memory mechanics of the language and perhaps explore topics like static binding and concurrency a bit while re-learning the language?

Someday I hope to be working on OS development and perhaps very close to the hardware type things like embedded systems. I am also currently taking a course that is roughly on c but it would be ideal to learn c++ as well as that is more practical for what I want to build.

What would you recommend?
Since you have programming skills already I would recommend:


If you have time you also can watch some talks from Bjarne Stroustrup

Be aware there is a lot old stuff around on the internet.
I normally recommend to learn from the experts: Stroustrup, Josuttis, Sutter, Scott Meyers, Sommerlad, Stepanov and many others who talk at CppCon
Registered users can post here. Sign in or register to post.