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.
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