Нысанға бағытталған әдістеме бағдарламалау процесін айтарлықтай жеңілдетеді. Оның шеңберінде қолданылатын сыныптар және олардың даналары - нысандар кез-келген мәселені шешу мүмкіндіктерін кеңейтеді. Объектілік мінез-құлықтың барлық түрлерін сипаттайтын класс функциялары әдістер деп аталады. Сыныпты дамыту кезінде көрсетілген модификаторға байланысты (жалпыға ортақ, қорғалатын, жеке) оның әдістеріне қол жеткізу әр түрлі тәсілдермен жүзеге асырылуы мүмкін. Бұл жерде функционалдық шақырудың мәні де үлкен маңызға ие.
Нұсқаулық
1-қадам
Кез-келген сыныпқа сілтеме жасаған кезде оның көріну аясын қарастырыңыз. Бағдарлама кодының басында файлдың сипаттамасы бар файлды көрсеткен жөн. Ол үшін #include “File_name.h” сияқты конструкция жазыңыз. Немесе сипаттама кодын сол жерге салыңыз. Әдісті шақырмас бұрын объектіні келесі белгіні қолданып инициализация жасаңыз: CClass1 Obj1, мұнда CClass1 - класс аты, Obj1 - объектінің аты. Класс объектісімен бірге оның данасына сілтемелер де қолданыла алады. Бұл жағдайда көрсеткішті жариялап, жадыны бөліңіз: CClass1 * Obj2 = жаңа CClass1 ().
2-қадам
Объект әдісін келесі пәрменмен шақырыңыз: Obj1.metod1 (), мұнда оператор «.» (нүкте). Класс данасына көрсеткішпен жұмыс жасағанда «->» операторын қолданыңыз: Obj2-> metod1 (). Нысанның немесе меңзердің ауқымын қарастырыңыз. Сонымен, бір функцияның ішіндегі айнымалыны жариялау кезінде ол оның сыртындағы компиляторға көрінбейтін болады.
3-қадам
Егер класс әдісі жалпыға қол жетімділік спецификаторымен сипатталса, оны бағдарламаның кез келген жерінен жоғарыда аталған әдістерді қолдану арқылы атауға болады. Алайда, көбінесе әдістер деректерді қорғау мақсатында жасырын мәртебесін алады. Сонымен, private функциясын қолданғанда жариялау кезінде функция тек оның класында болады. Ол тек сол сыныптың данасының басқа әдісі шеңберінде аталады. Қорғалған модификатор сонымен бірге үшінші тарап кодына арналған әдісті пайдалануды өшіреді, бірақ балалар сыныптары үшін мұндай мүмкіндікті қамтамасыз етеді. Тұқым қуалайтын сыныпта әдісті шақырудың мысалы: класс A // ата-ана класы {қорғалған: void funcA (); }; B сыныбы: public A // мұрагерлік (еншілес) класс {public: void funcB () {funcA (); } // ата-аналық кластың әдісін шақыру};
4-қадам
Сол кластың басқа функциясындағы класс әдісіне қол жеткізген кезде оның данасын құру қажет емес. Әдістің атауын және жіберілетін параметрлерді көрсету жеткілікті. Әдістің шақыру коды мысалы: CClass2 класы {void func1 (int k); бостандық func2 () {func1 (50); }};
5-қадам
Сыныпты шақырмай әдіске қол жеткізудің тағы бір әдісі бар. Алайда, бұл үшін көрсетілген әдіс сыныпта статикалық деп жариялануы керек. Сыныптағы әдіс сипаттамасына мысал: класс CClass3 {static int func3 ();} Бұл жағдайда func3 әдісіне шақыру кез келген жерде орындалуы мүмкін бағдарламада конструкцияны қолдану: CClass3:: func3 ().