First, you should know that C++11, the C++ standard ratified in 2011, redesigns the language to promote safer and more expressive code. C++11 introduces rvalue references, std::unique_ptr (a smart pointer with unique ownership semantics and a move constructor, superseding std::auto_ptr), auto (type inference), and container iteration syntactic sugar. C++14 and C++17 enhance the changes brought by C++11.<p>Know about RAII, ownership, move semantics, and smart pointers. Please know that some common C idioms are considered poor C++. (E.g. resource cleanup via goto is superseded by destructors, and malloc and free are superseded by new and delete, which in turn are discouraged in favor of smart pointer RAII.)<p>Modern C++ is a good programming language, but unfortunately, many resources don’t teach it. Make sure that the resource covers C++11 at earliest. Bjarne Stroustrup, the original implementor of C++, has written some good books. Herb Sutter is another notable C++ author. See also <a href="https://stackoverflow.com/q/388242/8887578" rel="nofollow">https://stackoverflow.com/q/388242/8887578</a>.