int swap(int, int);
double max (double par1, double par2);
void func();
Функцияның анықтамасы оның тақырыбына және мағыналық жүктемені таситын,
фигуралық жақшаға алынған меншікті денесінен тұрады. Егер функция мән қайтарса,
Void типінен жақсы, қайтарылатын мән сияқты функция денесінде сол типтің
параметріндей return операторы қатысуы керек. Егер қайтарылатын мән келешекте
программада (void) қолданылмайтын жағдай болса, яғни return операторы параметрсіз
жалғасады және біржола түсіріледі, онда функциядан қайту жабылатын жақшаның
жетістігі бойынша орындалады.
Функция нақты іс-әрекетті орындауы үшін, ол прграммада шақырылуы керек.
Функцияға қарау кезінде қойылған тапсырмаларды орындайды, ал жұмыс аяқталуы
кезінде кейбір мәндерді шешімі ретінде қайтарады.
Функцияның шақырылуы өздігінен артынан дөңгелек жақша ішінде үтірмен
ажыратылған аргументтер тізімі жүретін функцияның идентификатор нұсқауларын
көрсетеді:
Функция аты (аргумент 1, аргумент2,...., аргумент N);
Функцияның әрбір аргументі келешекте есеп процесінде қолдану үшін функция
днесіне берілетін константаны, өрнекті және айнымалыны көрсетеді. Функцияның
аргументтер тізбегі бос болуы мүмкін.
Функция басқа функцияларды шақыра алады, ал олар өз кезегінде үшіншілердің
шақырылуын шығар алады және т.б. Сонымен қатар функция өзін шақыра алады. Бұл
құбылыс программалауда рекурсия деп аталады.Бұрыннан көрсетілгендей, С++ тегі кез-
келген программа міндетті түрде өзіне басты функция main() қосады.Программаны
орындау осы функциядан басталады.
Стандартты математикалық функцияның прототипі math.h. тақырыпты файлда
анықталған. Бұнда күнделікті жұмыста қолданатын функциялардың прототипі
негізделген: санды дәрежелеу, түбірден алу, лагорифмдік, тригонометриялық,
гипеболалық функциялар және т.б.
Ұсынылатын әдебиет
1. Программирование на Visul C++/ С.В. Глушаков, А.В. Коваль А.В., С.А. Черепнин;
Худож.-оформ.А.С. Юхтман.-М.:ООО «Издательство АСТ»; Харьков: «Фолио», 2003.-726
с.
2.Глушаков С.В., Коваль А.В., Смирнов С.В. Язык программирования С++: Учебный
курс/Худож.- оформитель А,С.Юхтман. – Харьков: Фолио; М.: ООО «Издательство АСТ»,
2001.-500 с.
5 (1,3,10) тақырыбынан СДЖ-на арналған бақылау тапсырмалары
1.Басқарудың негізні элементтері. Түймешелер. Редакциялау терезесі.
2.Аралас тізім. Айналу сызығы.
3.Басқарудың қосымша элементтері.Тақырып элементі. Ползунок. Спин -түймеше.
6 тақырып. Кластар және объекттер. Кластардың құрылымы. Кластардың
мұрагерлігі.
Дәріс жоспары:
1.Объектілік- бағытталған программалау әдістемелігі және концепциялары.
2.Кластар. Конструкторлар және деструкторлар.
3.Жай және күрделі мұрагерлік.
Дәрістің қысқаша мазмұны
ОБП әдістемелігінде клас түсінігі бір типті объектілер тобы ретінде анықталады.
Сонымен қатар әрбір кластың өкілі объект болып табылады. Әрбір объект оның осы
мүшесінің ағымды мағынасын анықтайтын өзінің ерекше жағдайлары бар.Кластардың
функционалды белгісін я, оның мүшесінің функцияларымен берілетін әрекеттерінен
анықтайды. Әр класта мәліметтерді сақтайтын арнайы жадтар бөлінеді және әрбір
облыстың осы типтегі мәліметтерде мүмкін бола алатын операциялар қалыптастырады.
Берілген кластың объектілерін құру конструктор деп аталатын арнайы функция – мүше
арқылы жүреді, ал жою-деструктор деп аталатын басқа функция-мүше арқылы. Класс ішкі
деректерді қол жетпес ете алады, яғни оларды ашылған, жабылған және қорғалған ретінде
көрсетеді. Класс осы типтегі объекттердің басқа әлеммен қарым-қатынасы үшін нақты
анықталған интерфейс құрады.
Объектілік-бағытталған жобалауда шешілетін есеп алгоритмдік модель түрінде
емес, сұраныстармен алмасатын әр түрлі кластардың объектілері түрінде көрсетіледі.
Сұраныс алған объект оған сәйкес функция-мүше шақырумен жауап береді.
Класс түсінігі ОБП әдістемелігінде сияқты С++ тілінде өзекті болып табылады,
онда класс- кеңінен функциональды толтырылған синтаксистік құрылым:
class <класс аты>
{//кластың жабылған фуекция-мүше және дерек -мүшесі
public:
//кластың ашылған фуекция-мүше және дерек -мүшесі
}
Кластың хабрландыруының ішінде көрсетілген функциялар мен айнымалылар
осы кластың мүшесі бола бастайды. Кластың хабарламасының ішінде көрсетілген
айнымалылар осы кластың дерек-мүшесі деп аталады; класс хабарламасының ішінде
көрсетілген функциялар кластың функция-мүшесі деп аталады. Класта хабарланған
барлық функциялар мен айнымалылар осы класс үшін жабық бола бастайды. Ендеше
бұл олардың осы кластың тек басқа мүшелеріне ғана мүмкіндігі бар екенін білдіреді.
Кластың ашық мүшелерін хабарлау үшін артынан қос нүкте еретін public сөзінен кейін
хабарланған барлық функциялар мен айнымалылар кластың басқа мүшелері үшін және
программаның кез-келген басқа бөлігі үшін мүмкіндік бар. Сәйкес кластың объектісін
құру үшін деректер типінің спецификаторы ретінде кластың атын қолдану керек. Мысалы:
AnyClass ob1, оb2;
Класс объектісі құрылғаннан кейін ”нүкте” операциясын қолданып, кластың
ашық мүшелеріне өтуге болады.
Кейбір объектті құрғанда, оны инициалдау керек. Бұл мақсат ұшін С++ конструктор
деп аталатын фнкция-мүше береді. Класс конструкторы оның класының объектісі
құрылған сайын шақырылады. Конструктор мүшесі болып келетін кластың аты қандай
болса, оның да аты сондай және ол қайтарылмалы мәнге иеленбеген.
Класс деструкторы объектті жою кезінде шақырылады. Ол глобальды объекттерге
программа аяқталған кезде шақырылады, ал локальдылар үшін – ол көріну облысынан
шыққанда. Конструктор мен деструкторларға көрсеткіштер алу мүмкін емес.
Класс мүшелері statik модификаторымен хабарлануы мүмкін. Кластың статистикалық
мүшесі класс облысының шегіне ғана кіру мүмкіндігі бар функция немесе глобальды
айнымалы сияқты қарастырыла алады.
Statik модификаторымен анықталған кластың дерек-мүшесі осы кластың барлық
көрсетушілерімен бөлінеді, себебі шын мәнініде бұл айнымалының тек бір ғана данасы
бар. Шын мәнінде, статистикалық деректер-мүшелер жады кластың ешбір көрсетушілері
болмаса да бөлінеді.Сондықтан статистикалық деректер-мүшелерді хабарлап қана
қоймай, оларды анықтауы керек. Статистикалық деректер-мүшелеріне қарапайым
функция-мүше көмегімен кіру мүмкіндігінен еш айырмашылығы жоқ, бірақ ол үшін
берілген кластың кем дегенде бір объектісін құру керек.