Несмотря на множество улучшений C++11, C++это все еще нелегкий язык. Java, хотя и не так проста, как некоторые думают, все же является более простым языком с очень хорошей производительностью (часто почти такой же быстрой, как C++) и предлагает лучшие IDE (может быть Visual C++, так же хорошо, как нынешние Java IDE, но не повезло здесь, в Linux), что значительно более полная стандартная библиотека (JDK), больше библиотек (например, Hibernate , Spring , JEE , Lucene и т. д.) и отсутствие утечек памяти (ну, почти, ни одной - вы все равно можете создать утечку памяти в Java, но сделать это труднее чем в C++). Если честно, с современными C++11гораздо легче избежать памяти лука-порея.
В C ++ 11 есть много интересных функций, таких как лямбда-выражения, ключевое слово auto, семантика перемещения и многое другое. Это определенно намного лучший язык, чем C++98был. Посмотрите этот обзор Херба Саттера о новых функциях в C++11: Элементы современного C++стиля.
Подводя итог, я думаю, что каждый должен выучить хоть немного C++. Если вы программировали в Java, Scala, Rubyили Pythonза последнее десятилетие и не прикоснулся Cили C++, теперь C++11я думаю , что настало время , чтобы узнать C++11и улучшить свои навыки программирования при этом.
Я, вероятно, не буду C++много использовать на работе в ближайшие годы, и когда мне понадобится более мощный язык, чем Java, я, вероятно, пойду на Scala, но я буду внимательнее смотреть C++11и пытаться изучить и понять новые функции, особенно о многопоточности и параллелизме.
Помните: всегда полезно выучить новый язык программирования, даже если вы не планируете использовать его в производстве.