Darsliklar C++ Funksiya

C++ C++ Funksiya

Funksiya — dasturlashning ustunlaridan biri. Funksiyani tushunmasdan turib jiddiy loyiha yozib bo’lmaydi. Katta tizimlar ming-minglab funksiyadan tashkil topgan. Ular kodni takrorlashdan qutqaradi, uni bo’laklarga ajratadi va o’qishni osonlashtiradi. Aslida siz main degan funksiyani birinchi darsdanoq ishlatib kelyapsiz.

Funksiyama’lum bir vazifani bajaradigan, nom bilan atalgan va qayta-qayta chaqirsa bo’ladigan kod bloki. U parametr qabul qilishi va natija qaytarishi mumkin.

Funksiya yaratish va chaqirish

C++’da funksiya qaytish_turi nom() { ... } shaklida e’lon qilinadi. Hech narsa qaytarmasa, turi void bo’ladi:

#include <iostream>
using namespace std;

void salomlash() {
    cout << "Assalomu alaykum, UzbekDevs!" << endl;
}

int main() {
    salomlash();
    salomlash();
    return 0;
}
Assalomu alaykum, UzbekDevs!
Assalomu alaykum, UzbekDevs!

void salomlash() funksiyani e’lon qildi, biroq uni bajarmadi. Bajarilishi uchun uni nomi bilan chaqirish kerak: salomlash(). Bir marta yozilgan kodni ikki marta ishlatdik.

Natija qaytaruvchi funksiya

Funksiya return orqali natija qaytaradi. Bunda qaytish turi aniq belgilanadi:

#include <iostream>
using namespace std;

int yigindi(int a, int b) {
    return a + b;
}

int main() {
    int natija = yigindi(15, 27);
    cout << natija << endl;
    cout << yigindi(100, 200) << endl;
    return 0;
}
42
300

int yigindi(int a, int b) — ikki butun son qabul qilib, butun son qaytaradigan funksiya. return qiymatni tashqariga chiqaradi va funksiyani shu yerda to’xtatadi.

Funksiya prototipi

C++’da funksiya u chaqirilishidan oldin e’lon qilingan bo’lishi kerak. Agar funksiyani main dan keyin yozmoqchi bo’lsangiz, avval uning prototipini e’lon qilasiz:

#include <iostream>
using namespace std;

int kopaytma(int a, int b);   // prototip

int main() {
    cout << kopaytma(6, 7) << endl;
    return 0;
}

int kopaytma(int a, int b) {  // to'liq ta'rifi
    return a * b;
}
42

Prototip — funksiyaning “e’loni”: u kompilyatorga funksiya nomi, parametrlari va qaytish turini oldindan aytadi. Bu C++’ning yuqoridan pastga o’qish tartibidan kelib chiqadi.

Nega funksiya kerak?

Funksiyaning uch asosiy foydasi bor: kod takrorlanmaydi (bir marta yozib, ko’p marta ishlatasiz), dastur mantiqiy bo’laklarga bo’linadi, va xatoni topish osonlashadi (har funksiyani alohida sinash mumkin). Aynan shu sabab yaxshi dasturchi katta vazifani kichik funksiyalarga ajratadi.

Xulosa

Bu bo’limda funksiya e’lon qilish (void va qiymat qaytaruvchi), chaqirish, return bilan natija berish va funksiya prototipini ko’rib chiqdik. Funksiya — kodni qayta ishlatish va tartibga solishning eng kuchli quroli. Keyingi darsda funksiya parametrlariga chuqurroq kirib boramiz.