こんにちは。
C/C++はJavaなどの元になっている?という意見などがあり、
JavaやC#はC/C++の構文に強く影響を受けています。といいますか、C++の難しい部分をまるっと削除し、学習を容易にし、かつ、多少の速度を犠牲にして生産性を上げたようなイメージかと。
デメリットとしてはVMがないと動かないのでVM自体を書く意味がないです。OSのカーネルを書くのも実用的ではないでしょう。
また個人的に興味もあったので学ぼうと思ったのですが、
プログラマとしてのスキルアップのためにはたいへん有用と思いますよ。
C++は学んで損はありますか?
悩ましいです。C++はかなり学習難易度が高いので、ある意味人を選んでしまう言語と思います。
CプログラマがC++を学ぶことは常に有用と思いますが、ゴールがJavaの場合は微妙です。
JavaはC++に比べると格段に学習が容易ですので、同じ時間をかければそれだけ広く深く学べます。
Javaがゴールでしたら、コンピュータの仕組みを学びやすいC言語までで十分かも知れません。
C++には、各種参照やテンプレートなど難しくてJavaやC#には存在しない概念が盛り沢山です。これらは速度的な妥協をしないで生産性を上げる仕組みです。その分、学習難易度が高いです。