Dinamik Yaradılma və Silinmə
Proqramın icrası zamanı yaddaş sahəsinin ayrılmasına və silinməsinə dinamik yaradılma və silinmə deyilir. Gösətricilərə proqramın icrası boyu yaddaşda yer ayrıla bilər və həmin yerə ehtiyac qalmadıqda həmin yer azad oluna bilər.
Dinamik yaradılma
Göstəriciyə yaddaşda yer ayırmaq üçün new operatorundan istifadə olunur. new operatorundan istifadə etməklə göstəriciyə yer ayırmaq üçün aşağıdakı sintaksisdən istifadə edilir:
göstərici = new tip;
Çalışma 13. int tipli x göstəricisi elan edin və ona dinamik yer ayırın.
Həlli. Kod aşağıdakı kimi olar:
int *x;
x = new int;
Dinamik ayrılan yaddaşdan istifadə
! Tipik proqramlaşdırma səhvi: Göstəriciyə yer ayırmada ona muraciət etmək.
Göstəriciyə new operatoru ilə yer ayırdıqdan sonra ulduz * operatorundan istifadə etməklə həmin yerdə olan məlumata müraciət etmək olar. Ulduz operatoru ilə göstəricinin istinad etdiyi sahəyə müraciət qaydası ilə biz artıq tanışıq.
Çalışma 14. int tipli x göstəricisi elan edin, new operatoru ilə x -ə yer ayırın və həmin yerə 5 qiymətini yazın.
Həlli. Kod aşağıdakı kimi olacaq:
int *x;
x = new int;
*x = 5;
Dinamik silinmə
new operatoru ilə ayrılan yeri silmək üçün delete operatorundan istifadə olunur. delete operatorunun sintaksisi aşağıdakı kimidir:
delete göstərici;
Çalışma 15. int tipli x göstəricisi elan edin, new operatoru ilə x -ə yer ayırın və həmin yerə 5 qiymətini yazın. x -ə ayrılmış yeri yaddaşda silin.
Dostları ilə paylaş: |