0. Прочитайте Страуструпа последнее издание (англ). Если язык вы знали то это лучшая книга чтобы обновить знания
1. C++11 C++14, в производстве чаще пока еще С++03
2. Лучший компилятор clang++ (поддерживает любой стандарт и любую платформу)
3. boost это набор библиотек на все случаи жизни самый хорошо сынжинереный. Стоит писать не под него а с использованием
4. пункт 3
5. C++ для задач требующих точного понимания стоимости каждой операции, это embedded DSP Server computing
Math много чего еще
Учтите, С++ это инструмент который нужно учить постоянно
Дополню
-----------
С++ мультипарадигменный
А так же много уровней абстракции поддерживает
На нем можно писать как на чистом С - это самый низкий уровень
Можно ООП и абстракции
Можно паттерны
А можно функциональный стиль
С С++ в этом и проблема что знать нужно очень много.
Я могу сказать что я читал на протяжении своей карьеры
Прежде всего я умел программировать и имел представление об алгоритмах и модели памяти
(что такое указатели, алокация удаление и т д)
Сначала я почитал какую-то левую книжку и изучил его на уровне новичка. Написал проект библиотека линейной алгебры (это было еще в универе, задача была актуальна для меня) В принципе здесь моих знаний хватало чтобы стать джуниором, но я такой подход не люблю
Потом Страуструп (тогда это было издание по стандарту 03). Здесь я дополнил свои знания деталями которые пропустил при самостоятельном изучении. Тут стоит отметить что Страуструп весьма странная книга и написана тяжело. Секцию же ООП вообще там лучше не читать (самая последняя).
Где-то рядом я прочитал Гради Буч - ООА и ООП с примерами применения. Очень хорошая кика чтобы понять к чему все это придумали вообще. Сильно выправляла мозги
Потом был Керниган и Ричи Язык программирования С. Эту я прочитал просто от безделья, но теперь считаю что это было необходимо. Здесь можно понять зачем придумали именно С. И насколько там все просто, задумано.
Следом пошли техники: Герб Саттер Решение сложных задач на С++ и Новые сложные задачи С++
читать обязательно, разобрано много костылей и проблем языка. Дано очень много дельных советов
С Мейерс - Эффективное использование С++ туда же. Прекрасный разбор.
Макконнел - Совершенный код. Очень крутая книга. Она отшлифует уже почти бриллиант.
Помимо всего прочего я работал над проектами и постоянно читал всяческие форумы, блоги, дискутировал с коллегами. Решал задачки разных собеседований.
Отдельного внимания заслуживает книга Банды четырех (Паттерны).
Я ее с трудом дочитал, читал ее я уже аж после всего перечисленного и после примерно 7-8 лет опыта С++.
Я уже давно был Senior dev. и наконец нашел таки время и для нее. Она мне показалась до ужаса скучной и очевидной, поскольку почти все предложенные решения я придумывал и сам неоднократно. Кроме того, большинство этих решений неоправданно тяжелы, и очень запутывают код. Тема холиварная и спать надо много, но я пожалуй остановлюсь только на том что в моей практике, худшими с точки зрения цены ошибок были разработчики которые учились начиная с этой книги. Их код недодерживаем запутан и очень плохо поддается рефакторингу. Такой код имеет самые долго отлеживаемые ошибки.
Где-то рядом я прочитал Фаулера - Рефакторинг. Вполне себе неплохо. Рекомендую. Но тут стоит к опытному коллеге обратиться. Идея то проста Тесты - Маленькие комиты - YAGNI KISS и SRP но детали лучше познавать на практике.
У меня был хороший лид, который меня в конце концов научил :)
Совсем забыл! Александреску же! Скажем так - не так страшен Александреску как тот кто его начитался :)
Фана доставил много, а так же дал возможность на эти игрища потерять около 3-х месяцев работы. Даже не знаю
стоит ли читать. Наверное стоит, но нужно помнить что на практике лучше не использовать если вы уже не эксперт.
Остальное С++ не касается, но чтобы стать профессионалом Вам потребуются алгоритмы и структуры данных (Кормен, Кнут), многопоточность (Энтони Уильямс), другие языки(питон, JS, java), оптимизация и профилирование.
и много много разных специфических знаний
Удачи Вам в этом нелегком но, безусловно, интереснейшем пути :)