2025 Müəllif: Lynn Donovan | [email protected]. Son dəyişdirildi: 2025-01-22 17:17
Nə vaxt silməkdir a üçün yaddaşı boşaltmaq üçün istifadə olunur C++ sinif obyekti, obyektin dağıdıcısı edir obyektin yaddaşından əvvəl çağırılır edir ayrılmış (obyektin dağıdıcısı varsa). Əgər operand üçün silin operator edir dəyişdirilə bilən l-dəyəri, onun dəyəri edir obyektdən sonra müəyyən edilməmişdir silinir.
Həmçinin sual yaranır ki, C++-da silmək və silmək arasında fərq nədir?
Hər ikisi eyni məqsəd üçün istifadə olunur, lakin yenə də bəziləri var fərqlər , the fərqlər bunlardır: silin anoperator, free() isə kitabxana funksiyasıdır. silin ayrılmış yaddaşı azad edin və destruktoru çağırın. Lakin free() de-allocatememory, lakin destruktoru çağırmır.
Bir də soruşa bilərsiniz ki, C++ yeni necə işləyir? Nə vaxt yeni a üçün yaddaş ayırmaq üçün istifadə olunur C++ sinif obyekti, yaddaş ayrıldıqdan sonra obyektin konstruktoru çağırılır. istifadə edərək massiv ayırarkən yeni operator, birinci ölçü sıfır ola bilər - the yeni operator unikal göstərici qaytarır.
Bir də sual oluna bilər ki, C++ dilində new and delete operatorundan nə istifadə olunur?
C++ istifadə edərək obyektlərin dinamik ayrılmasını və ayrılmasını dəstəkləyir operatorları yeni və silin . Bunlar operatorlar pulsuz mağaza adlı hovuzdan obyektlər üçün yaddaş ayırın. The yeni operator xüsusi funksiyanı çağırır operator yenidir , və operatoru silin xüsusi funksiyanı çağırır operator silin.
C++ göstəricilərini silməliyəmmi?
1 Cavab. Siz yox silmək lazımdır o, və üstəlik, etməməlisən silin o. Torpaq avtomatik obyektdirsə, o, avtomatik olaraq azad ediləcək. Beləliklə, əl ilə silinir a göstərici ona görə, siz müəyyən edilməmiş davranışa girirsiniz.