C++-da obyektin dinamik ayrılmasını necə məhdudlaşdıra bilərəm?
C++-da obyektin dinamik ayrılmasını necə məhdudlaşdıra bilərəm?

Video: C++-da obyektin dinamik ayrılmasını necə məhdudlaşdıra bilərəm?

Video: C++-da obyektin dinamik ayrılmasını necə məhdudlaşdıra bilərəm?
Video: Никита Цуканов "Кросс-платформенное объектно-ориентированное взаимодействие C# и C++" 2024, Noyabr
Anonim

Stack əsasında obyektlər tərəfindən dolayı idarə olunur C++ kompilyator. Onlar əhatə dairəsindən kənara çıxanda məhv olurlar və dinamik olaraq ayrılmış obyektlər sil operatorundan istifadə etməklə əl ilə buraxılmalıdır yaddaş sızma baş verir. C++ Java və C# kimi dillər tərəfindən istifadə edilən avtomatik zibil toplama yanaşmasını dəstəkləmir.

Bunu nəzərə alaraq, C++-da obyektin dinamik ayrılmasını necə məhdudlaşdıra bilərəm?

Stack əsasında obyektlər tərəfindən dolayı idarə olunur C++ kompilyator. Onlar əhatə dairəsindən kənara çıxanda məhv olurlar və dinamik olaraq ayrılmış obyektlər sil operatorundan istifadə etməklə əl ilə buraxılmalıdır yaddaş sızma baş verir. C++ Java və C# kimi dillər tərəfindən istifadə edilən avtomatik zibil toplama yanaşmasını dəstəkləmir.

Əlavə olaraq, CPP-də dinamik olaraq obyektlər üçün yaddaş ayıra bilərikmi? Dinamik Yaddaş Ayrılması üçün Biz edə biləcəyimiz obyektlər həmçinin obyektləri dinamik şəkildə ayırmaq . kimi Biz Bilin ki, Konstruktor sinifin üzv funksiyasıdır və hər dəfə yeni olduqda çağırılır obyekt həmin sinifdən yaradılmışdır. Destruktor həm də hər zaman çağırılan sinif üzvü funksiyasıdır obyekt əhatə dairəsindən kənara çıxır.

İnsanlar da soruşurlar ki, obyektləri yalnız dinamik olaraq ayrıla bilən C++ sinfini necə etmək olar?

  1. edilə bilməz. Edə biləcəyiniz yeganə şey konstruktoru özəl etmək və sinfin yeni nümunəsini yaradan statik fabrikə sahib olmaqdır. –
  2. Belə bir sinif yaratmaq, şübhəsiz ki, problemdir.
  3. Bu çox qəribə tələbdir.

Niyə biz obyektlərin dinamik inisializasiyasını etməliyik?

The Obyektlərin Dinamik Başlanması etmək deməkdir başlatmaq yaratarkən sinfin məlumat üzvləri obyekt . Nə vaxt Biz istəyirik yaratarkən məlumat üzvlərinə ilkin və ya standart dəyərləri təmin etmək obyekt - ehtiyacımız var istifadə etmək obyektlərin dinamik işə salınması.