ξέρετε ότι οι στατικές μεταβλητές είναι πάντα δηλώνονται μέσα σε μια συνάρτηση C , αλλά σε αντίθεση με άλλες μεταβλητές , οι τιμές τους εξακολουθούν να υπάρχουν και να διατηρούνται , ακόμη και μετά τις εξόδους λειτουργία . 2
κηρύξει μια στατική μεταβλητή , χρησιμοποιώντας την ίδια σύνταξη όπως θα κάνατε για να δηλώσει μια κανονική τοπική μεταβλητή , αλλά προηγείται η δήλωση με τη λέξη στατική , όπως αυτό :
στατική ποσό int = 0 ?
Η 3περιμένετε την εκκίνηση να συμβεί μόνο την πρώτη φορά που θα καλέσετε τη λειτουργία . Μεταγενέστερους χρόνους , η προηγούμενη τιμή θα είναι ακόμα εκεί . Εάν παραλείψετε την προετοιμασία , αυτή αυτόματα θα την αρχική τιμή 0 .
Η 4Χρησιμοποιήστε τη μεταβλητή στη λειτουργία, όπως θα κάνατε με οποιοδήποτε άλλο .
5Να θυμάστε ότι , όπως οποιαδήποτε άλλη τοπική μεταβλητή , ένα στατικό μεταβλητή δεν μπορεί να αναφέρεται εκτός λειτουργίας . Ωστόσο , αν έχετε περάσει από ένα δείκτη σε αυτό , ο δείκτης μπορεί να οριστεί εκ νέου με επιτυχία , δεδομένου ότι η μεταβλητή εξακολουθεί να υφίσταται .
Εικόνων Μάθετε πότε πρέπει να χρησιμοποιήσετε το στατικό μεταβλητές
Η 6Χρήση μια στατική μεταβλητή για να επιτρέψει τη λειτουργία σας να έχει τη δική του μνήμη που μεταφέρει από τη μία κλήση στην άλλη . Για παράδειγμα, μια συνάρτηση που παίρνει και αναλύει την επόμενη γραμμή του αρχείου μπορεί να χρειαστεί να εσωτερικά παρακολουθείτε πού είναι στο αρχείο .
Η 7Χρησιμοποιήστε μια στατική μεταβλητή ως ένας τρόπος για την παροχή ένα κομμάτι της μνήμης για την αποθήκευση ενός αποτελέσματος. Για παράδειγμα, μια συνάρτηση για να ενώσετε χορδές θα μπορούσε να χρησιμοποιήσει μια στατική μεταβλητή στην οποία αποθηκεύεται το αποτέλεσμα της συνένωσης και επιστρέφει ένα δείκτη σε αυτό . Η μνήμη του στατική μεταβλητή είναι διαρκώς διαθέσιμα, αλλά θα πρέπει να απελευθερωθεί αυτόματα όταν το πρόγραμμα τελειώνει , όπως και οποιαδήποτε άλλη τοπική μεταβλητή .
8Χρησιμοποιήστε στατικές μεταβλητές για ένα τρέχον σύνολο ή παρόμοια συσσώρευση . Σκεφτείτε το εξής παράδειγμα : int
running_total ( int num ) { στατική int ποσό = 0 ? Άθροισμα + = num ? Άθροισμα επιστροφή? } Κάθε φορά που θα καλέσετε αυτή τη λειτουργία , διατηρεί και επιστρέφει το τρέχον σύνολο όλων των αριθμών που πέρασαν σε αυτό .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα