Rust:
Att organisera kod i funktioner
Hur man gör:
Anta att du har kod som beräknar en cirkels area flera gånger. Istället för att upprepa formeln, så omsluter du den med en funktion.
fn berakna_cirkel_area(radius: f64) -> f64 {
std::f64::consts::PI * radius.powi(2)
}
fn main() {
let radius = 5.0;
let area = berakna_cirkel_area(radius);
println!("Arean av cirkeln är: {}", area);
}
Utmatning:
Arean av cirkeln är: 78.53981633974483
Fördjupning
Historiskt sett kommer funktioner från matematiken, där de mappar indata till utdata. Inom programmering har de funnits sedan monteringsdagarna, fast då kallade vi dem ‘subrutiner’. Rusts funktioner kan returnera värden och till och med andra funktioner tack vare förstaklassfunktioner och stängningar.
Alternativ? Inline-kod eller makron, men de är röriga för komplex logik. Objekt med metoder är ett annat sätt att organisera funktionalitet, en annan smak än fristående funktioner.
Implementeringen i Rust är ganska rakt på sak. Funktioner deklarerar sina parametertyper och returtyp. De namnges ‘ormcase’ enligt konvention. Du har dina offentliga funktioner (pub fn
) för användning utanför modulen och privata för intern användning. Och Rust har denna coola funktion där du inte behöver ett return
-nyckelord för det sista uttrycket i en funktion.
Se även
Kolla in dessa för mer information: