Ո՞րն է C++-ում ցուցիչներ օգտագործելու իմաստը:
Ո՞րն է C++-ում ցուցիչներ օգտագործելու իմաստը:

Video: Ո՞րն է C++-ում ցուցիչներ օգտագործելու իմաստը:

Video: Ո՞րն է C++-ում ցուցիչներ օգտագործելու իմաստը:
Video: C++ Ներածություն | Introduction 2024, Մայիս
Anonim

Պատճառներից մեկը օգտագործել ցուցիչներ այնպես է, որ փոփոխականը կամ օբյեկտը կարող է փոփոխվել կոչվող ֆունկցիայի մեջ: Մեջ C++ դա ավելի լավ պրակտիկա է օգտագործել հղումներ քան ցուցիչներ . Չնայած հղումներն ըստ էության են ցուցիչներ , C++ ինչ-որ չափով թաքցնում է փաստը և թվում է, թե դուք անցնում եք արժեքի կողքով:

Նմանապես, դուք կարող եք հարցնել, թե ինչու խորհուրդ չի տրվում օգտագործել ցուցիչներ C++-ում:

Խելացի ցուցիչներ սովորաբար հետևում են այն օբյեկտներին, որոնց նրանք մատնացույց են անում հիշողության կառավարման նպատակով: -ի չարաշահումը ցուցիչներ սխալների հիմնական աղբյուրն է՝ մշտական տեղաբաշխում, տեղաբաշխում և հղում, որը պետք է իրականացվի ծրագրի միջոցով՝ գրված ցուցիչներ ներկայացնում է հիշողության արտահոսքի վտանգը:

Բացի վերևից, ե՞րբ պետք է օգտագործեմ C++ ցուցիչները: Երբ դեպի օգտագործել Ինչ Օգտագործեք ցուցիչներ : Օգտագործեք ցուցիչներ եթե ցուցիչ թվաբանություն կամ անցնող NULL- ցուցիչ պահանջվում է. Օրինակ՝ զանգվածների համար (Նկատի ունեցեք, որ զանգվածի հասանելիությունն իրականացվում է օգտագործելով սլաքը թվաբանություն).

Հաշվի առնելով սա՝ որո՞նք են ցուցիչների օգտագործման առավելությունները:

մայոր առավելություններ -ից ցուցիչներ (i) Այն թույլ է տալիս կառավարել կառուցվածքները, որոնց հիշողությունը հատկացվում է դինամիկ: (ii) Այն թույլ է տալիս զանգվածների և տողերի փոխանցումը ավելի արդյունավետ գործառույթների: (iii) Հնարավորություն է տալիս ֆունկցիաներին փոխանցել կառուցվածքի հասցեն՝ ամբողջ կառուցվածքի փոխարեն:

Ինչու՞ ցուցիչները անվտանգ չեն:

Անվտանգություն: Ըստ ոչ թույլ տալով ցուցիչներ Java-ն արդյունավետորեն ապահովում է վերացականության մեկ այլ մակարդակ մշակողին: Ոչ մի ցուցիչի աջակցություն Java-ն ավելի է դարձնում ապահով քանի որ դրանք մատնանշում են հիշողության գտնվելու վայրը կամ օգտագործվում են հիշողության կառավարման համար, որը կորցնում է անվտանգությունը, երբ մենք դրանք ուղղակիորեն օգտագործում ենք: