hoz пишет: ↑29 июл 2019, 22:21
Я бы ни сказал. С++ вещь сложная. Я бы сказал, очень сложная.
Я так и сказал ж. Но имел я в виду не это, а его раздутый арсенал возможностей, которые были в него напиханы непоследовательно и непродумано (вплоть до того, что даже неизвестно как их канонически, однозначно реализовать). В результате многие из этих возможностей создают кучу проблем и имеют кучу подводных камней. Изучать всё это дело (вместе со всеми подводными камнями) - то ещё удовольствие.
Гораздо лучше изучать язык с более приятным и продуманным (более последовательным) дизайном.
Вот вам потренироваться:
http://www.robertyu.com/wikiperdido/C++ ... of%20Ideas
Хотя многие говорят, что C++11, вроде как, уже не настолько плох, как прошлые версии.
hoz пишет: ↑29 июл 2019, 22:21
Хотя бы, по причине присутствия указателей т.к. отсутствует garbage collector.
Это ещё только C - скромный, но эффективный язык, на котором написаны ядра операционных систем. Страуструп попытался создать язык с более высокоуровневыми возможностями программирования (ООП, метапрограммирование, и т.д.), но с такой же близостью к железу, как и у C, и обратной совместимостью с C. Частично у него это получилось.
Кстати, Rust как раз и был создан (в том числе) для того, чтобы избавиться от проблем, создаваемым указателями в C. Проблемы с dangling pointers и прочим memory safety (а также избавлением от мусора в памяти без garbage collector'а) в нём отсутствуют принципиально (на уровне статических проверок). При этом указатели присутствуют.
hoz пишет: ↑29 июл 2019, 22:21
Мне он не особо нравится, но, тем не менее, там, где нужна производительности, без него никуда.
На стороне C++ годы его использования, наработанные библиотеки, насиженное место в индустрии... В плане производительности уже давно есть альтернативы. Надеюсь, что доминирование C++ - только вопрос времени.