I'm wanting some learning resources for C++11 oriented toward advanced programmers. I already know C and C++ quite fluently. But since I haven't used either in a couple years for any serious/commercial work, I'm a bit rusty in certain areas. Some of the things I need to brush up on:
- "const correctness"
- the various cast operators and when and when not to use each
- all of the stuff available in the 11 standard libraries and how to use them (I'm prone to reinvent wheels)
- proper C++ software design practices and conventions
- general best practices and pitfalls
- proper template class design
In the past when I normally used C and C++ it was for actual systems programming, where often no implementation of the full standard libs and runtimes even existed (often had to roll my own malloc and free implementations). So while I know the syntax through-and-through, have intimate knowledge of pointers and memory and know how the language works/runs, I'm prone to "reinvent the wheel" in many situations because I didn't know the stdlibs already implemented the thing I needed. I also need to brush up on "const correctness", referencing, etc. And anything to help me better design classes, polymorphic interfaces, templates, operators, and software in general would also be very helpful. And I don't want to waste my time with beginners' books talking about variables being storage space for numbers.
I'm not really doing this for any important project or commercial work... we're using C# for our projects. But I invested a lot of time (and money) in the past into my programming skills, which included C and C++. It's not an art I want to lose. And since I now have Visual Studio 2012 and C++11 is out and taking the programming world by storm I don't want to end up behind the times; I've got to keep up with the rest of the world.
I'm looking for any online references/materials, articles, tutorials, books, videos and anything and everything that can be helpful to me in re-mastering C++ and learning about the new C++11 standard.
Thanks,
--ATC--