Видео: Как работи изтриването в C++?
2024 Автор: Lynn Donovan | [email protected]. Последно модифициран: 2023-12-15 23:43
Кога изтриване е използва се за освобождаване на памет за a C++ клас обект, деструктор на обекта е извиква се преди паметта на обекта е освободен (ако обектът има деструктор). Ако операндът към Изтрий оператор е променлива l-стойност, нейната стойност е недефиниран след обекта се изтрива.
Също така въпросът е каква е разликата между изтриване и изтриване в C++?
И двете се използват за една и съща цел, но все пак имат някои разлики , на разлики са: Изтрий е аноператор, докато free() е библиотечна функция. Изтрий освобождава разпределената памет и извиква деструктор. Но free() де-разпределя паметта, но не извиква деструктор.
Човек може също да попита как работи C++ new? Кога нов се използва за разпределяне на памет за a C++ клас обект, конструкторът на обекта се извиква, след като паметта е разпределена. Когато разпределяте масив с помощта на нов оператор, първото измерение може да бъде нула - the нов операторът връща уникален указател.
Човек може също да попита каква е ползата от оператора new и delete в C++?
C++ поддържа динамично разпределение и освобождаване на обекти с помощта на new и delete оператори . Тези оператори заделя памет за обекти от пул, наречен thefree store. В нов оператор извиква специалната функция оператор нов , и на оператор за изтриване извиква специалната функция оператор изтриване.
Трябва ли да изтрия указатели C++?
1 отговор. Вие не го правите трябва да изтриете и освен това не трябва Изтрий то. Ако земята е автоматичен обект, тя ще бъде освободена автоматично. Така че ръчно изтриване а показалец към него вие преминавате в недефинирано поведение.