С++ сложнее джавы в плане метапрограммирования.
Все эти разговоры про сложность управления памятью - крупное преувеличение, само по себе управление памятью вещь весьма простая - нужно просто не забывать что её нужно освобождать. Хоть в джаве и есть сборщик мусора (т.е. в принципе джава течь как С++ не может) по факту плохо использующая память программа на джаве может жрать память как не в себя и постоянно вставать на очистку мусора, как по мне - никакой разницы с С++ программой которая будет течь и падать, С++ хотя бы падать будет быстрее, что поможет при отладке :)
Метапрограммирование в С++ это уже отдельная тема, там довольно много правил выведения типов, нет отладчика шаблонов и сообщения о простых ошибках могут быть очень многословны.
Еще C++ ругают на Linux
В первый раз слышу что у g++ есть плагины , вообще любая разработка под Linux гораздо проще чем под мастдай, любая библиотека установленная в систему очень легко доступна для ваших проектов, не надо ничего качать, ставить и собирать ручками как в винде, просто используете свой пакетный менеджер для установки пакетов и систему подключения оных в вашей системе сборки.