Видео: Как да огранича динамичното разпределение на обект в C++?
2024 Автор: Lynn Donovan | [email protected]. Последно модифициран: 2023-12-15 23:43
Базирана на стек обекти се управляват имплицитно от C++ компилатор. Те се унищожават, когато излязат извън обхвата и динамично разпределени обекти трябва да бъде освободен ръчно, като в противен случай се използва оператор delete памет възниква теч. C++ не поддържа подхода за автоматично събиране на боклука, използван от езици като Java и C#.
Имайки предвид това, как да огранича динамичното разпределение на обект в C++?
Базирана на стек обекти се управляват имплицитно от C++ компилатор. Те се унищожават, когато излязат извън обхвата и динамично разпределени обекти трябва да бъде освободен ръчно, като в противен случай се използва оператор delete памет възниква теч. C++ не поддържа подхода за автоматично събиране на боклука, използван от езици като Java и C#.
Освен това, можем ли да разпределим памет за обектите динамично в CPP? Динамично разпределение на паметта за Обекти, които можем също динамично разпределяне на обекти . Като ние Знайте, че конструкторът е функция-член на клас, който се извиква всеки път, когато е нов обект е създаден от този клас. Деструкторът също е функция член на класа, която се извиква винаги, когато обект излиза извън обхвата.
Хората също така питат, как се прави C++ клас, чиито обекти могат да бъдат само динамично разпределени?
- Не може да се направи. Единственото нещо, което можете да направите, е да направите конструктора частен и да имате статична фабрика, която конструира нов екземпляр на класа. –
- Създаването на такъв клас със сигурност е проблем.
- Това е много странно изискване.
Защо трябва да правим динамична инициализация на обекти?
В Динамична инициализация на обекти означава да инициализирайте членовете на данните на класа, докато създавате обект . Кога ние искаме за предоставяне на начални или стойности по подразбиране на членовете на данните по време на създаване на обект - Имаме нужда от да използвам динамична инициализация на обекти.