Οι συναρτήσεις είναι βασικές κατασκευές προγραμματισμού, καθώς θέτουν τα θεμέλια για επαναχρησιμοποίηση κώδικα και διευκολύνουν τον αρθρωτό προγραμματισμό. Οι συναρτήσεις είναι αυτόνομα μπλοκ κώδικα που εκτελούν συγκεκριμένες εργασίες. Μπορούν να λάβουν είσοδο, με τη μορφή ορισμάτων, και να επιστρέψουν μια τιμή.
Το Rust παρέχει λειτουργίες για οργάνωση κώδικα, ενθυλάκωση και επαναχρησιμοποίηση κώδικα.
ΚΑΤΑΣΚΕΥΗ ΒΙΝΤΕΟ ΤΗΣ ΗΜΕΡΑΣ
Καθορισμός Λειτουργιών σε Rust
Οι λειτουργίες σκουριάς μοιάζουν πολύ λειτουργεί σε οποιαδήποτε άλλη γλώσσα προγραμματισμού , αν και υπάρχουν μικρές διαφορές που θα πρέπει να καταλάβετε.
Θα ορίσετε λειτουργίες για τα προγράμματα Rust με το στ λέξη-κλειδί ακολουθούμενη από το όνομα της συνάρτησης, προαιρετικά ορίσματα και μια προαιρετική επιστροφή Τύπος δεδομένων .
// function that neither takes in arguments nor returns a value
fn function_name() {
// function body here
}
Εδώ είναι μια απλή συνάρτηση Rust που δεν δέχεται ορίσματα ούτε επιστρέφει τιμές.
φορτίζει πιο γρήγορα το τηλέφωνό σας σε λειτουργία αεροπλάνου
fn a_function(){
let x = 3;
println!("{}", x)
}
a_function είναι μια απλή συνάρτηση Rust που εκτυπώνει τη μεταβλητή Χ .
Υπογραφές λειτουργίας σκουριάς
Οι υπογραφές συναρτήσεων είναι ένας τρόπος ονομασίας συναρτήσεων και περιγραφής των ορισμάτων και των τύπων επιστροφής τους, χωρίς να συμπεριλαμβάνεται σώμα συνάρτησης. Οι υπογραφές συναρτήσεων είναι χρήσιμες για την τεκμηρίωση των API των βιβλιοθηκών Rust.
Ακολουθεί ένα παράδειγμα υπογραφής λειτουργίας Rust:
fn name()
fn greet(name: &str)
ο όνομα συνάρτηση είναι μια ελάχιστη υπογραφή συνάρτησης, ενώ το χαιρετώ Η υπογραφή καθορίζει ότι η συνάρτηση παίρνει ένα μόνο όρισμα, όνομα , τύπου string ( &str ).
Δήλωση συναρτήσεων με ορίσματα και τιμές επιστροφής
Οι συναρτήσεις σκουριάς μπορούν να λάβουν πολλά ορίσματα και το όριο δεν ορίζεται ρητά. Οι συναρτήσεις με ορίσματα είναι γενικά πιο ευέλικτες αφού μπορούν να λάβουν τιμές από άλλες συναρτήσεις και μέρη του κώδικα.
πώς να αλλάξετε τα εικονίδια των windows 10
Ακολουθεί το τυπικό μοντέλο μιας συνάρτησης Rust που δέχεται ορίσματα:
fn function_name(arg: type, arg2: type) {
// function body here
}
Ο τύπος ορίσματος συνάρτησης μπορεί να είναι ένας ενσωματωμένος τύπος Rust ή ένας προσαρμοσμένος τύπος από το πρόγραμμά σας.
Ακολουθεί ένα παράδειγμα μιας απλής συνάρτησης που παίρνει δύο ακέραιους αριθμούς ως ορίσματα:
fn add_numbers(x: i32, y: i32) {
println!("{}", x + y);
}
ο add_numbers Η συνάρτηση παίρνει δύο ακέραιους 32-bit και εκτυπώνει το άθροισμα των ακεραίων.
Οι συναρτήσεις σκουριάς μπορούν να επιστρέψουν πολλαπλές τιμές. θα πρέπει να καθορίσετε τους τύπους επιστροφής και να επιστρέψετε τις τιμές του τύπου από τη συνάρτηση.
fn function_name(arg: type, arg2: type) -> (type, type) {
// function body here
return arg, arg2
}
Εδώ είναι μια συνάρτηση που παίρνει μια συμβολοσειρά και έναν ακέραιο 32-bit ως όρισμα και επιστρέφει τα ορίσματα ως πλειάδα.
fn string_and_integer(s: String, n: i32) -> (String, i32) {
return (s, n);
}
ο string_and_integer Η συνάρτηση παίρνει μια συμβολοσειρά και έναν ακέραιο 32-bit, επιστρέφοντάς τα ως πλειάδα. Μπορείτε να επιστρέψετε μόνο μία τιμή από μια συνάρτηση Rust.
πώς να κάνετε τον ανεμιστήρα του φορητού υπολογιστή πιο ήσυχο
Μπορείτε να αφήσετε έξω το ΕΠΙΣΤΡΟΦΗ λέξη-κλειδί κατά την επιστροφή της τελικής έκφρασης από μια συνάρτηση, για να γίνει ο κώδικας πιο συνοπτικός.
fn string_and_integer(s: String, n: i32) -> (String, i32) {
return (s, n);
}
// the functions are equivalent
fn str_and_int(s: String, n: i32) -> (String, i32) {
(s, n)
}
Αυτές οι δύο συναρτήσεις έχουν την ίδια συμπεριφορά αφού και οι δύο λαμβάνουν μια συμβολοσειρά και έναν ακέραιο και επιστρέφουν αυτά τα ορίσματα ως πλειάδα.
Κλήση Λειτουργιών Σκουριάς
Μπορείτε να καλέσετε μια συνάρτηση από μια άλλη γράφοντας το όνομά της ακολουθούμενο από τιμές που θέλετε να περάσετε σε αυτήν μέσα σε παρένθεση:
fn add_numbers(x: i32, y: i32) -> i32 {
x + y
}
fn main() {
let result = add_numbers(3, 5);
println!("The result is {}", result); // Output: The result is 8
}
ο κύριος κλήσεις λειτουργιών add_numbers , περνώντας το δύο ακέραιους αριθμούς. Εκχωρεί το αποτέλεσμα της συνάρτησης σε μια μεταβλητή, αποτέλεσμα .
Μπορείτε να δηλώσετε συναρτήσεις για κατασκευές σκουριάς
Μπορείτε να δηλώσετε συναρτήσεις μέσα σε δομές Rust. Αυτά γίνονται μέθοδοι για τη δομή που μπορεί να έχει πρόσβαση και να την τροποποιήσει.
Το Rust δεν είναι καθαρά αντικειμενοστρεφές, αλλά παρέχει δομές για την ομαδοποίηση των σχετικών δεδομένων. Μπορείτε να εργαστείτε για την εφαρμογή εννοιών OOP στο Rust χρησιμοποιώντας δομές με μεθόδους.