Չկա նման բան, որը կոչվում է «կոնստրուկտորներ» և «դեստրուկտորներ» C ծրագրավորման լեզվում կամ կառուցվածքային լեզուներում, թեև դրանց պես գործող այնպիսի գործառույթներ սահմանելու սահմաններ չկան:. Դուք պետք է ստեղծեք գործառույթներ, որոնք կգործեն ինչպես կոնստրուկտորներն ու դեստրուկտորները, այնուհետև զանգահարեք դրանք ձեռքով:
C-ն ինքնաբերաբար կանչում է դեստրուկտորներին:
3 Պատասխաններ: Այո, տվյալներն ինքնաբերաբար կկործանվեն, դրան հասնելու համար ոչինչ պետք չէ անել: վեկտորը կկարգավորի իր կողմից հատկացված դինամիկ հիշողության մաքրումը: Վեկտորի դեստրուկտորը կկանչվի ավտոմատ կերպով, երբ A-ի օրինակը ոչնչացվի:
Ի՞նչ է դեստրուկտորը C լեզվում:
Destructor-ը անդամային ֆունկցիա է, որն ավտոմատ կերպով կանչվում է, երբ օբյեկտը դուրս է գալիս շրջանակից կամ բացահայտորեն ոչնչացվում է ջնջելու կոչով: Destructor-ն ունի դասի նույն անունը, որին նախորդում է tilde (~):
Քանի՞ տեսակի դեստրուկտորներ կան:
CPP. Կարո՞ղ է դասարանում լինել մեկից ավելի կործանիչ: Ոչ, դասում կարող է լինել միայն մեկ կործանիչ, որի դասի անունը նախորդում է ~-ին, ոչ մի պարամետր և ոչ վերադարձի տեսակ:
Կարո՞ղ են կործանիչները լինել վիրտուալ C-ում:
Այո, հնարավոր է ունենալ մաքուր վիրտուալ կործանիչ: Մաքուր վիրտուալ կործանիչները օրինական են ստանդարտ C++-ում, և ամենակարևոր բաներից մեկը, որ պետք է հիշել, այն է, որ եթե դասը պարունակում է մաքուր վիրտուալ կործանիչ, այն պետք է ապահովի գործառույթի մարմին մաքուր վիրտուալ կործանիչի համար: