Koodin järjestäminen funktioihin

C++:
Koodin järjestäminen funktioihin

Kuinka tehdään:

Otetaan esimerkki yleisestä tehtävästä: ympyrän pinta-alan laskemisesta. Sen sijaan, että kirjoittaisimme saman kaavan joka kerta, kapseloimme sen funktioon.

#include <iostream>
#define PI 3.14159

double calculateCircleArea(double radius) {
    return PI * radius * radius;
}

int main() {
    double r = 5.0;
    std::cout << "Ympyrän, jonka säde on " << r << ", pinta-ala on " << calculateCircleArea(r) << std::endl;
    return 0;
}

Esimerkkituloste:

Ympyrän, jonka säde on 5, pinta-ala on 78.5397

Syväsukellus

Historiallisesti proseduurit ja funktiot olivat rakenteellisen ohjelmoinnin selkäranka, jonka 1960-luvulla puuhamiehet ottivat käyttöön taistellakseen varhaisempien imperatiivisten ohjelmointikielten “spagettikoodin” ongelmia vastaan. Vaihtoehdot, kuten OOP (olio-ohjelmointi), vievät asiaa eteenpäin yhdistämällä nämä funktiot tietorakenteisiin. C++:ssa on tavallisia funktioita, luokkametodeja (mukaan lukien staattiset metodit), lambdoja ja mallinefunktioita (templates functions), joista jokainen tarjoaa erilaisia etuja. Hyvin järjesteltyjen funktioiden toteuttaminen yleensä vaatii periaatteiden, kuten DRY (“Don’t Repeat Yourself”) ja SRP (Single Responsibility Principle), noudattamista, mikä tarkoittaa, että kukin funktio tekee vain yhden asian ja tekee sen hyvin.

Katso myös

Lisätietoja funktioista C++:ssa:

Suunnitteluperiaatteita liittyen funktioihin:

Lue lambdoista ja edistyneestä funktiokäytöstä: