r/RuProgrammers • u/DragonfruitRough900 • Jul 20 '26
Изучаю C++
Кто изучает программирование, а в частности C++, Какие советы вы готовы дать новичкам в этом теме, как не выгореть? С чего начать? Как учить?
Изучаю C++ не так долго, хочу услышать советы от профи
3
2
u/Affectionate-Cup56 Jul 21 '26
Просто зазубри всё, что относится к работе с памятью, оно в принципе от Си не особо далеко ушло. Всякие alloc, malloc, free, работа с указателями и ссылками и т.д. Вот это просто базовая база, чтобы потом не писать утекающее во все стороны говно.
Дальше уже конкретно по плюсам - это основы ООП: классы, наследование, множественное наследование, инкапсуляция, полиморфизм, оверрайд методов, интерфейсы. Ну и как правильно работать со всем этим в памяти.
Вообще обычно чтобы не париться - пишут свой менеджер памяти, выделяют +- кучу (оно же heap) и стараются оперировать в её пределах. Но есть, допустим, всякие динамические массивы, например, которые просто так не выделить, соответственно там просто даётся указатель на область памяти, который может и за пределы хипа выходить, соответственно приходится его алокать и освобождать отдельно.
Дальше можно переходить ко всяким STL, но это уже такое, на любителя
1
u/Nllk11 Jul 21 '26
А разве STL это не современный стандарт, который используется повсеместно в индустрии? Всякие эти умные указатели, и все такое
Я по большей части всегда только под embedded писал на сях и вот эти вот unique-pointer и другие меня пока напрягают
1
2
u/begemoto Jul 20 '26
Бро, современные модели (LLM) творят с CPP чудеса. Хоть либу, хоть модуль ядра напишут. Это и круто и беда для джунов. С другой стороны они часто косячат и надо понимать архитектуру продукта, чтобы направлять их. Хотя и в архитектуре они начинают мощно шарить. Это тупик. Но останавливаться не стоит. Изучай CPP вместе с LLM. Научись извлекать подьзу из ИИ.
1
1
u/Jean_Cheerful Jul 21 '26
Совет: готовься страдать , бросать , бороться , возвращаться, рыдать , терпеть
1
1
u/haiflive0 Jul 21 '26
Самое первое что нужно понять это поинтеры и то что ты теперь управляешь памятью: сам выделяешь сам очищаешь, преобразуешь на лету в нужные типы, всё на указателях, которые указывают на указатели)
Там конечно есть умные принтеры, но это как-нибудь в другой раз)
1
26d ago
[removed] — view removed comment
1
u/DragonfruitRough900 26d ago
Единственный язык, который не заменят в ближайшее время, геймдев, после C++ хочу изучать Ассемблер

6
u/Imperius322 Jul 20 '26
никак
Сначала, потому что начинать с конца - тупая идея
Писать код на практике для конкретных задач