Re:Why You Have to Learn Modern C++
by SamReidHughes on Saturday August 15, 2015 @02:59PM
(#10066404)
If you're an experienced C++03 programmer, the features of C++11 make perfect sense and are intuitive to use, except for some details around how the heck rvalue references work and the reference collapsing rules (and what exactly std::move and std::forward do and how to use them). (But why you want rvalue references and move semantics should be quite clear.) I think, for such users, the Wikipedia article on C++11 is the place to go, and then look at what C++14 adds.
For some C programmer that doesn't "get" C++, I'd have recommended the book Accelerated C++, written before C++11 came to be. Now I'm not so sure that's the best recommendation, but it's still a good one. On the other hand, one could say, hey, the real meat of knowing how to use C++ is just learning how to be safe in the presence of exceptions. After that, it's just a matter of restricting yourself to stuff you understand (and knowing not to use iostream :-).
(Sorry, I think this is a somewhat mediocre answer.)
For some C programmer that doesn't "get" C++, I'd have recommended the book Accelerated C++, written before C++11 came to be. Now I'm not so sure that's the best recommendation, but it's still a good one. On the other hand, one could say, hey, the real meat of knowing how to use C++ is just learning how to be safe in the presence of exceptions. After that, it's just a matter of restricting yourself to stuff you understand (and knowing not to use iostream :-).
(Sorry, I think this is a somewhat mediocre answer.)