38. მაჩვენებლების შესახებ
C++ ენის შემადგენელი მნიშვნელოვანი ელემენტებია მაჩვენებლები(Pointers). მაჩვენებლები ამ ენამ მიიღო მემკვიდრეობით C ენისაგან. C ენა კი თავის დროზე ითვლებოდა, როგორც Assambler-ის კონკურენტი სისტემასთან სიახლოვის გამო. სწორედ მაჩვენებლები უზრუნველყოფენ ამ სიახლოვეს. მაჩვენებლის საშუალებით შესაძლებელია კომპიუტერის მეხსიერების ყველა უჯრედთან მიმართვა - ინფორმაციის ჩაწერა-წაკითხვა, სწორედ ამის გამოა, რომ C/C++ ენა არ ითვლება აბსოლიტურად უსაფრთხო ენად და პროგრამის სწორად მუშაობის მთელი პასუხისმგებლობა გადატანილია პროგრამისტზე. თუმცა, უნდა ითქვას ისიც, რომ სწორედ ამ ენებზეა აგებული უამრავი სერიოზული პროგრამული პროექტები, მათ შორის ოპერაციული სისტემებიც.
Win32 გარემოში პროგრამირებისას ანუ MFC(Microsoft Foundation Classes - მაიკროსოფტის საბაზისო კლასები)-ს, WinAPI(windows application programming interface - ვინდოუსის აპლიკაციების პროგრამული ინტერფეისი, ფუნქციათა ერთობლიობა)-ს ან ATL(Active Template Library - აქტიური შაბლონების ბიბლიოთეკა)-ის გამოყენებისას მაჩვენებლებს უბრალოდ ვერ გაექცევით, ყველა ეს სისტემა აგებულია მაჩვენებლების ბაზაზე;
მაჩვენებლების დადებითი თვისებები:
1. სიახლოვე სისტემასთან - ეს ნიშნავს იმას რომ პროგრამა არის უფრო მოქნილი, სწრაფი და ზომით მცირე. საერთოდ ნებისმიერი ცვლადი კომპილირებისას კონვერტირდება მაჩვენებლურ მექანიზში, ამიტომ პირდაპირ მაჩვენებლებით მუშაობა გარკვეულწილად აჩქარებს პროგრამას.
2. მაჩვენებლით შეიძლება მეხსიერების ნებისმიერი უჯრედის დამისამართება
მაჩვენებლების უარყოფითი თვისებები:
1. მაჩვენებელზე აგებული პროგრამა შედარებით რთულად გარჩევადია, ვიდრე ჩვეულებრივ ცვლადებზე აგებული. თუმცა ყველაფერი მიჩვევის საქმეა.
2. მაჩვენებელზე აგებული პროგრამა პროგრამისტისაგან მოითხოვს მეტ პუნქტუალურობას და პასუხისმგებლობას, შესაბამისად - მეტ დროს. ავტორი: გიორგი ბაწაშვილი 2009 |