C++ Funktsioonid programminäidetega
⚡ Nutikas kokkuvõte
Funktsioonid sees C++ grupeerige seotud laused korduvkasutatavateks nimega plokkideks, mis võtavad sisendi vastu, töötlevad seda ja tagastavad väljundi. Programmid kombineerivad sisseehitatud teegifunktsioone ja kasutaja määratletud funktsioone, millest igaüks deklareeritakse, defineeritakse ja kutsutakse välja, et vältida koodi kordamist.
Mis on funktsioon C++?
Funktsioon sees C++ viitab lausete rühmale, mis võtab sisendi, töötleb seda ja tagastab väljundi. Funktsiooni mõte on kombineerida ühiseid ülesandeid, mida tehakse korduvalt. Kui teil on erinevad sisendid, ei kirjuta te sama koodi uuesti. Funktsiooni kutsutakse lihtsalt erineva andmekogumiga, mida nimetatakse parameetriteks.
Tk C++ programmil on vähemalt üks funktsioon, funktsioon main(). Saate oma koodi jagada erinevateks funktsioonideks. See jaotus peaks olema selline, et iga funktsioon täidaks konkreetset ülesannet.
Seadmel on palju sisseehitatud funktsioone C++ standardne raamatukogu. Saate neid funktsioone oma programmis kutsuda.
Miks kasutada funktsioone?
Funktsioonide kasutamisega on seotud palju eeliseid. Nende hulka kuuluvad:
- Iga funktsioon paneb seotud koodi kokku. See muudab programmeerijate jaoks koodi mõistmise lihtsamaks.
- Funktsioonid muudavad programmeerimise lihtsamaks, välistades koodi kordamise.
- Funktsioonid hõlbustavad koodi taaskasutamist. Saate kutsuda sama funktsiooni ülesande täitmiseks programmi erinevates osades või isegi väljaspool programmi.
Sisseehitatud funktsioonid
In C++, teegi funktsioonid on sisseehitatud C++ funktsioonid. Nende funktsioonide kasutamiseks peate lihtsalt neid otse välja kutsuma/helistama. Funktsioone ei pea ise kirjutama.
Näide 1:
#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; }
Väljund:
Siin on koodi ekraanipilt:
Code Selgitus:
- Selle funktsioonide kasutamiseks lisage meie programmi iostreami päisefail.
- Lisage selle funktsioonide kasutamiseks cmath teek. Soovime kasutada selles defineeritud funktsiooni sqrt().
- Lisage meie koodi std nimeruum, et kasutada selle klasse ilma seda kutsumata.
- Kutsuge funktsioon main(). Programmi loogika tuleks lisada selle funktsiooni kehasse.
- Deklareerige kaks topeltmuutujat, num ja ruutjuur.
- Printige konsoolile teksti. Tekst palub kasutajal sisestada number.
- Lugege klaviatuurilt kasutaja sisendit. Sisend muutub muutuja num väärtuseks.
- Kutsuge välja teegi funktsioon sqrt(), mis arvutab arvu ruutjuure. Andsime funktsioonile edasi parameetri num, mis tähendab, et see arvutab ruutjuure numbrist. See funktsioon on määratletud teegis cmath.
- Printige kasutaja sisestatud number, selle ruutjuur ja mõni muu konsoolil olev tekst.
- Programm peab pärast edukat lõpetamist tagastama väärtuse.
- Funktsiooni main() keha lõpp.
Kasutaja määratud funktsioonid
C++ võimaldab programmeerijatel ise oma funktsioone määratleda. Funktsiooni eesmärk on seotud koodi rühmitamine. Seejärel antakse koodile kordumatu tunnus, funktsiooni nimi.
Funktsiooni saab kutsuda/välja kutsuda mis tahes muust programmi osast. Seejärel käivitab see oma kehas määratletud koodi.
Näide 2:
#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; }
Väljund:
Siin on koodi ekraanipilt:
Code Selgitus:
- Selle funktsioonide kasutamiseks lisage meie programmi iostreami päisefail.
- Lisage meie koodi std nimeruum, et kasutada selle klasse ilma seda kutsumata.
- Looge kasutaja määratud funktsioon nimega sayHello().
- Funktsiooni sayHello() kutsumisel printige konsoolile teksti.
- Funktsiooni sayHello() keha lõpp.
- Kutsuge funktsioon main(). Programmi loogika tuleks lisada selle funktsiooni kehasse.
- Kutsuge / käivitage funktsioon nimega sayHello().
- Programm peab pärast edukat lõpetamist tagastama väärtuse.
- Funktsiooni main() keha lõpp.
Kompilaator peab enne funktsiooni kasutamist seda teadma.
Funktsiooni deklaratsioon/prototüüp
Kui määrate pärast funktsiooni main() kasutaja määratud funktsiooni, siis C++ kompilaator tagastab veateate. Põhjus on selles, et kompilaator ei tea kasutaja määratud funktsiooni üksikasju. Üksikasjad hõlmavad selle nime, argumentide tüüpe ja nende tagastustüüpe.
In C++, funktsiooni deklaratsioon/prototüüp deklareerib funktsiooni ilma kehata. See annab kompilaatorile kasutaja määratud funktsiooni üksikasjad.
Deklaratsioonis/prototüübis lisame tagastustüübi, funktsiooni nime ja argumenditüübid. Argumentide nimesid ei lisata. Argumentide nimede lisamine aga viga ei tekita.
Funktsiooni definitsioon
Funktsiooni deklaratsiooni eesmärk on öelda C++ kompilaator funktsiooni nime, tagastustüübi ja parameetrite kohta. Funktsiooni definitsioon ütleb C++ funktsiooni keha kohta koostaja.
Süntaks
return_datatype function_name( parameters) {
function body
}
Eeltoodust lähtuvalt on funktsiooni definitsioonil funktsiooni päis ja keha. Siin on parameetrite selgitus:
- return_datatype – Mõned funktsioonid tagastavad väärtuse. See parameeter tähistab tagastatava väärtuse andmetüüpi. Mõned funktsioonid ei tagasta väärtust. Sellisel juhul muutub selle parameetri väärtus tühiseks.
- funktsiooni_nimi – see on funktsiooni nimi. Funktsiooni nimi ja parameetrid moodustavad funktsiooni allkirja.
- Parameetrid – see on funktsiooni parameetrite tüüp, järjekord ja arv. Mõnel funktsioonil pole parameetreid.
- funktsiooni keha – need on avaldused, mis määratlevad, mida funktsioon teeb.
Funktsiooni helistamine
Et funktsioon täidaks määratud ülesannet ja tagastaks väljundi, tuleb see välja kutsuda. Funktsiooni kutsumisel täidab see selle kehasse lisatud lauseid.
Funktsiooni kutsutakse välja selle nime järgi. Kui funktsioon võtab parameetreid, tuleks nende väärtused kutse ajal edastada. Kui funktsioon ei võta parameetreid vastu, siis ärge kutse ajal ühtegi väärtust edastage.
Argumentide läbimine
In C++, argument/parameeter on andmed, mis edastatakse funktsioonile selle kutsumise ajal. Väärtused tuleb lähtestada nende vastavate muutujatega.
Funktsiooni kutsumisel peavad argumentide arvud ühtima. See tähendab, et edastatud väärtuste arv peab olema võrdne parameetrite arvuga. Jällegi peavad väärtused parameetritele vastama ka tüübi poolest. Kui esimene parameeter on täisarv, peab ka sellele edastatud väärtus olema täisarv.
Funktsiooniparameetritele saab määrata vaikeväärtused. Kui funktsiooni kutsumisel parameetrile väärtust ei edastata, kasutatakse vaikeväärtust.
Näide 3: Kuidas kirjutada ja kutsuda funktsiooni
#include <iostream> using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum; return 0; } int addFunc(int num1, int num2) { int addFunc; addFunc = num1 + num2; return addFunc; }
Väljund:
Siin on koodi ekraanipilt:
Code Selgitus:
- Selle funktsioonide kasutamiseks lisage meie programmi iostreami päisefail.
- Lisage meie koodi std nimeruum, et kasutada selle klasse ilma seda kutsumata.
- Deklareerige funktsioon nimega addFunc(), mis võtab kaks täisarvu parameetrit. See loob funktsiooni prototüübi.
- Kutsuge funktsioon main(). Programmi loogika tuleks lisada selle funktsiooni kehasse.
- Deklareerige kolm täisarvu muutujat x, y ja summa.
- Printige konsoolile teksti. Tekst palub kasutajal sisestada kaks numbrit.
- Lugege klaviatuurilt kasutaja sisendit. Kasutaja peaks sisestama kaks numbrit muutujate x ja y jaoks, eraldades need tühikuga.
- Kutsuge funktsioon addFunc() ja edastage sellele parameetrid x ja y. Funktsioon töötab nende parameetrite alusel ja määrab väljundi muutuvale summale.
- Printige konsoolile koos muu tekstiga muutujate x, y ja summa väärtused.
- Funktsioon peab pärast edukat lõpetamist tagastama väärtuse.
- Funktsiooni main() keha lõpp.
- Funktsiooni määratlus. Defineerime funktsiooni addFunc(). Me ütleme, mida funktsioon oma kehas teeb, { }.
- Täisarvulise muutuja nimega addFunc deklareerimine.
- Parameetrite num1 ja num2 väärtuste liitmine ja tulemuse määramine muutujale addFunc.
- Funktsioon addFunc() peaks tagastama muutuja addFunc väärtuse.
- Funktsiooni keha lõpp, see tähendab funktsiooni määratlus.







