www.wikidata.uk-ua.nina.az
Destruktor v ob yektno oriyentovanomu programuvanni specialnij metod klasu yakij viklikayetsya avtomatichno pri znishenni ob yekta i priznachenij dlya jogo deinicializaciyi napriklad zvilnennya resursiv pam yati zakrittya fajliv tosho Zmist 1 Viklik destruktora 2 Priznachennya destruktora 3 Sintaksis destruktora 4 C 5 Posilannya 6 Primitki 7 Div takozhViklik destruktora RedaguvatiViklik destruktora dlya ob yekta zdijsnyuyetsya koli pri vikonanni programi vidbuvayetsya vihid za ramki oblasti vidimosti cogo ob yekta i jogo zhittyevij cikl zavershuyetsya abo koli ob yekt pov yazanij z inshim ob yektom yakij perestaye isnuvati abo koli pam yat pid ob yekt dinamichno vidilyayetsya vivilnyayetsya v yavnomu viglyadi abo pryamim viklikom destruktora dlya vivilnennya resursiv ob yekta bez vivilnennya pam yati v yakij znahoditsya ob yekt U movah programuvannya v yakih isnuye mehanizm avtomatichnogo pribirannya smittya skladno determinovano zabezpechiti mozhlivist vikliku destruktora tomu ci movi yak pravilo vvazhayutsya ne sumisnimi iz programnoyu idiomoyu RAII V takih movah zvilnennya ob yekta i pov yazanih z nim resursiv povinno vikonuvatis za dopomogoyu yavnogo vikliku vidpovidnoyi funkciyi yaki v kodi zazvichaj nazivayutsya Dispose Cej metod rekomenduyetsya dlya vivilnennya resursiv zamist vikoristannya dlya cogo finalizatora Priznachennya destruktora RedaguvatiPriznachennya destruktora vivilnyati stan ob yekta shlyahom vivilnennya resursiv sho vikoristovuvalis ob yektom yak to vivilnennya pam yati zakrittya fajliv zakrittya merezhevih z yednan vidpravlennya povidomlen inshim ob yektam tosho Sintaksis destruktora RedaguvatiC maye pravilo imenuvannya za yakim destruktori mayut take same im ya sho i klas v yakomu voni ogolosheni ale pochinayutsya z prefiksu tilda Destruktor v C ne maye tipu ta ne maye argumentiv okrim pokazhchika this yakij peredayetsya neyavno Destruktori ne uspadkovuyutsya ale mozhut buti virtualnimi V Object Pascal ogoloshennya destruktora mistit klyuchove slovo destructor i mozhe mati viznachene koristuvachem im ya ale zazvichaj yih nazivayut slovom Destroy V Perl metod destruktor nazivayetsya DESTROY V Ob yektnij sistemi Moose dlya Perl metod destruktor nazivayetsya DEMOLISH V Objective C metod destruktor nazivayetsya dealloc V Swift metod destruktor nazivayetsya deinit V PHP 5 metod destruktor nazivayetsya destruct V poperednih versiyah PHP ne isnuvalo destruktoriv 1 V Python dekstruktor opisuyetsya v magichnomu metodi del 2 ale cherez nayavnist mehanizmu zbirannya smittya jogo viklik ne mozhe buti kerovanij z programi C RedaguvatiV C destruktor ne mozhe prijmati argumentiv V prikladi destruktor vivilnyaye pam yat vidilenu konstruktorom Destruktor maye te same im ya sho i klas ale zi znakom tilda sho vkazanij pered nim Yaksho ob yekt buv stvorenij yak avtomatichna zminna jogo destruktor viklikayetsya avtomatichno yak tilki vikonannya programi vihodit za mezhi oblasti vidimosti Yaksho ob yekt bulo stvoreno za dopomogoyu virazu new todi destruktor bude viklikano pislya yavnogo vikliku operatora delete iz vkazannyam vkazivnika na ob yekt Zazvichaj cya operaciya vikonuyutsya v ramkah inshogo destruktora napriklad v destruktori ob yektu rozumnogo vkazivnika V iyerarhiyah nasliduvannya deklaraciya virtualnogo destruktora v bazovomu klasi garantuye sho destruktori pohidnih klasiv budut viklikani nalezhnim chinom same dlya tih ob yektiv na yaki vkazuye pokazhchik tip pokazhchika pri comu mozhe vidriznyatis vid tipu ob yekta na yakij vkazuye pokazhchik napriklad koli ob yekt vidalyayetsya cherez vkazivnik na bazovij tip klasu Ob yekti yaki vivilnyayutsya takim chinom povinni mistiti virtualnij destruktor Destruktor ne povinen generuvati viklyuchnih situacij 3 Priklad class Foo public Tipovij konstruktor Foo const char name m len strlen name m name new char m len 1 strcpy name m name m name m len 0 Destruktor Foo delete m name private int m len char m name Posilannya RedaguvatiGradi Buch Obektno orientirovannyj analiz i proektirovanie Klassy i obekty Arhivovano 1 grudnya 2009 u Wayback Machine Primitki Redaguvati Constructors and Destructors Arhivovano 18 sichnya 2018 u Wayback Machine from PHP online documentation 3 Data model Python 3 6 0a0 documentation python org The Python Software Foundation Arhiv originalu za 10 bereznya 2016 Procitovano 11 bereznya 2016 GotW 47 Uncaught exceptions Arhivovano 29 listopada 2014 u Wayback Machine Accessed 31 July 2011Div takozh RedaguvatiKonstruktor programuvannya nbsp Ce nezavershena stattya pro movi programuvannya Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Otrimano z https uk wikipedia org w index php title Destruktor programuvannya amp oldid 36177656