Другие языки программирования и технологии

Вопрос по изучению языка C++?

Я новичёк в программирование. Начал учить первым язык C++. Дошел до классов. С классами все понятно, но например зачем
тот же деструктор или поверхносное и глубокое копирование это до конца понять не могу.
Учить ли до конца C++ или перейти на более легкий язык по типу Python....
Artem Krut
Artem Krut
829
Питон не легче С++ с точки зрения понимани основ ООП. Добей плюсы - а потом хоть Питон, хоть Джава ;-)
Павел Куминов
Павел Куминов
21 943
Лучший ответ
На пол пути бросать ничего не стоит. Если просто в классе есть две обязательные функции конструктор и деструктор - они есть независимо переопределили вы их или нет. Они служат для выделения и очистки памяти. В ваших руках переопределить их основное поведение. В частности переопределение деструктора требуется в случаях если в классе динамически создаются новые объекты у которых нет родителей - в этом случае, если будет уничтожен объект в котором они будут созданы и не будет механизма который их уничтожит - то будет утечка памяти.
Alex Min &
Alex Min &
35 594
поверхностное копирование это например когда копируются указатели, и два объекта будут указывать на один и тот же участок памяти

а глубокое когда новому объекту выделяется помять под свой указатель
Ziynaddin Duysenbayev
Ziynaddin Duysenbayev
30 074
Узнай сначала как работает компьютер. Си - самый адекватный язык по отношению к компьютеру (из достаточно высокоуровневых). А С++ добавляет в Си ООП и СТЛ и ещё кучу других фич, упрощающих жизнь.
Азы Си не пробовал учить для начала? :)
А ведь с них всё и начинается. Нельзя просто так бездумно учить С++.
Artem Krut С не учил
поверхностное копирование это например когда копируются указатели, и два объекта будут указывать на один и тот же участок памяти

а глубокое когда новому объекту выделяется помять под свой указатель