2.20M
Category: softwaresoftware

Жадыны динамикалық басқару. Конструктор және деструктор

1.

Жадыны динамикалық
басқару. Конструктор
және деструктор

2.

Жадыны басқару:
Физикалык принциптерге сүйене отырып, әдетте жад 0-ден бастап нөмірленетін байттар
тізбегі турінде карастырылады. Әр нөмір сол байттын адресі. Өлшемдері 65536 (64кбайт)
байттан аспайтын жад бөліктері сегменттер делінеді. Олар 16-ға бөлінетін адрестерден
басталады. Сонымен жад көптеген сегменттерден турады. Сегменттерді бөлу және оларға
айнымалыларды, констант турлерін, программанын кодын орналастыруды жүйе автоматты
түрде, өзі орындайды.

3.

Статикалық жад
Статикалық жадты бөлу кезінде бөлінген жады бекітіледі. Жад бөлінгеннен
кейін оны өзгерту мүмкін емес. Жадты ұлғайту немесе азайту мүмкін емес.
Статикалық жадты бөлуде айнымалылар бөлінгеннен кейін олар тұрақты
болып қалады. Алғашқы бөлуден кейін бағдарламашы жадтың өлшемін
өзгерте алмайды. Егер бағдарламашы 8 элементті сақтай алатын массив
бөлсе, онда көрсетілген мәннен артық мәндерді сақтау мүмкін емес.

4.

Динамикалық жад
Жадыны динамикалық бөлудің басты артықшылығы - ол жадты үнемдейді.
Бағдарламашы жад бөле алады немесе қажет болған жағдайда жадты босата алады.
Жадты орындау кезінде қайта бөлуге болады және қажет болмаған кезде жадты
босатуға болады. Жадты динамикалық бөлу статикалық жадқа қарағанда тиімді. Бір
кемшілігі - динамикалық жад бөлуді енгізу күрделі.

5.

Жадыны динамикалық басқару

6.

Жадыны динамикалық басқару

7.

Жадыны динамикалық басқару

8.

Жадыны динамикалық басқару

9.

Жадыны динамикалық басқару

10.

Конструктор
Конструкторлар класс айнымалыларын инициализациялауға және жадыдан орын
бөлуге арналған айрықша функция болып табылады.
Конструктор бірінші кезекте кластың айнымалыларын инициализациялау және
жадыны сақтауға арналған кластың ерекше түрдегі функция мүшесін құрайды.
Конструкторлар аты ол тиесілі кластың атымен сәйкес келеді. Конструкторлар
аргументті қабылдап және қайта жүктеуі мүмкін. Класс объектісін құру кезінде
қажетті конструктор автоматты түрде шақырылады.

11.

Конструктор

12.

Конструктор

13.

Конструктор

14.

Деструктор
Деструкторлар деп — өшірілген объекті орын алатын динамикалық жадыны босату
үшін қызмет ететін тағыда бір арнайы функция- мүшелер айтылады.
Деструктор да конструтор сияқты префикс ретінде тильда ( ~ ) белгісі бар класс атын
ұстанады. Деструктор бағдарламада класс объектісіне сілтегіші бар delete операторы
кездескенде және объект өзінің көзге көрінетін обылыстан тыс шығып кеткен кезде
автоматты түрде шақырылады. Конструкторлардан ерекшелігі Деструкторлар
ешқандай аргументтерді қабылдамайды. Және қайта жүктеуі мүмкін емес. Егер
деструктор түсінікті берілмесе, компилятор класқа қарапайым деструкторын
ұсынады.

15.

Деструктор

16.

Деструктор

17.

Деструктор
English     Русский Rules