Uusi Tehtävärakenne
Pyyhkäise näyttääksesi valikon
Tähän asti olet kirjoittanut kaiken koodisi main-funktioon. Mutta C++:ssa voit luoda omia funktioita. Tutustut niihin tarkemmin myöhemmin, mutta keskitytään nyt perusteisiin, jotta voit alkaa käyttää niitä tulevissa harjoituksissa.
Ajattele funktiota laatikkona, joka sisältää koodinpätkän. Aina kun tarvitset kyseistä koodia, avaat laatikon eli kutsut funktiota. Jos et kutsu sitä, laatikon sisällä oleva koodi ei suoriteta. Tässä yksinkertainen esimerkki:
main.cpp
123456789101112#include <iostream> // This function takes a string parameter and prints a greeting message void sayHello(std::string name) { std::cout << "Hello, " << name << "!"; } // This function doesn't return any value int main() { sayHello("Alice"); // Calling your function with a parameter }
Tässä ohjelmassa on kaksi funktiota. Ensimmäinen on tuttu main, ja toinen on oma funktiosi sayHello.
Huomaa main-funktion lopussa oleva return 0;. Tämä tarkoittaa, että funktio palauttaa arvon 0. Myöhemmin opit, että funktiot voivat palauttaa myös muita arvoja.
sayHello-funktio ottaa nyt parametrin nimeltä name. Tämä tarkoittaa, että kun kutsut funktiota, välität arvon sulkujen sisällä.
Kutsumalla sayHello("Alice") main-funktion sisällä suoritat funktion ja näet tulosteen "Hello, Alice!".
Kokeile poistaa sayHello-funktion kutsu main-funktiosta, niin huomaat, että sayHello-funktion sisällä oleva koodi ei suoriteta.
Funktion parametrit
C++:ssa funktiolla voi olla useampi kuin yksi parametri. Parametrit erotetaan pilkuilla funktiomäärittelyssä. Jokainen parametri toimii muuttujana, joka sisältää funktion kutsussa välitetyn arvon.
main.cpp
1234567891011121314#include <iostream> // This function prints a greeting with a name and an age void greet(std::string name, int age) { std::cout << "Hello, " << name << "! You are " << age << " years old."; } int main() { greet("Alice", 25); std::cout << std::endl; greet("Bob", 30); }
Funktiolla greet on kaksi parametria, name ja age. Kun kutsut greet("Alice", 25), arvo "Alice" asetetaan name-parametriin ja 25 age-parametriin. Funktion sisällä voit käyttää näitä muuttujia kuten muitakin, viestin muokkaamiseen. Tuloste muuttuu syötettyjen arvojen mukaan, mikä tekee funktiosta joustavan ja uudelleenkäytettävän erilaisilla syötteillä.
Tärkeä huomioitava asia: useimmiten kirjoitat koodisi valmiiksi määriteltyyn funktioon, kuten sayHello, kun taas main-funktio on jo valmiiksi täytetty.
1. Mitä tapahtuu, jos et kutsu funktiota ohjelmassasi?
2. Mitä tarkoittaa return 0; main-funktiossa?
3. Kuinka kutsutaan funktiota nimeltä sayHello?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme