Τι είναι η λειτουργία στατικού μέλους στο C ++;



Αυτό το άρθρο θα σας δώσει αναλυτικές και περιεκτικές γνώσεις για τη λειτουργία στατικού μέλους στο C ++ με παραδείγματα.

Το Static είναι μια λέξη-κλειδί στα C και C ++ που χρησιμοποιείται για να δηλώσει έναν ειδικό τύπο μιας μεταβλητής ή μιας συνάρτησης μέσα ή έξω από μια τάξη. Σε αυτήν την ανάρτηση, θα κατανοήσουμε εν συντομία την έννοια των μεταβλητών στατικών μελών και των λειτουργιών στατικού μέλους στο c ++ και θα τις συγκρίνουμε με κανονικές μεταβλητές και συναρτήσεις με την ακόλουθη σειρά:

Στατικές μεταβλητές μελών

Οι μεταβλητές που ταξινομούνται ως στατικές είναι επίσης μέρος του C. υποθέστε ότι σε μια συνάρτηση υπάρχουν 2 μεταβλητές, η μία είναι κανονική μεταβλητή και η άλλη είναι στατική μεταβλητή. Η κανονική μεταβλητή δημιουργείται όταν καλείται η συνάρτηση και το εύρος της είναι περιορισμένο. Ενώ η στατική μεταβλητή δημιουργείται μία φορά και καταστρέφεται στο τέλος του προγράμματος. Αυτές οι μεταβλητές έχουν διάρκεια ζωής σε όλο το πρόγραμμα.





# συμπερίληψη με χρήση χώρου ονομάτων std void Test () {static int x = 1 x = ++ x int y = 1 y = ++ y cout<<'x = '<

Παραγωγή:

static-member-variables-1



Από την παραπάνω έξοδο, μπορούμε να συμπεράνουμε ότι κάθε φορά που η συνάρτηση Test () ονομάστηκε αντίγραφο της μεταβλητής «y», ενώ το ίδιο αντίγραφο της μεταβλητής «x» χρησιμοποιήθηκε κάθε φορά που κλήθηκε η συνάρτηση Test ().

Τώρα, ας συζητήσουμε τα χαρακτηριστικά των στατικών μεταβλητών

  1. Οι στατικές μεταβλητές αρχικοποιούνται σε 0. Αρχικοποιείται μόνο μία φορά.



  2. Σε όλο το πρόγραμμα, δημιουργείται μόνο ένα αντίγραφο της μεταβλητής στατικού μέλους για ολόκληρη την τάξη, επομένως οι μεταβλητές στατικών μελών ονομάζονται επίσης μεταβλητές κλάσης Κοινοποιείται από όλες τις παρουσίες της τάξης.

  3. Η μεταβλητή στατικού μέλους είναι ορατή μόνο μέσα στην τάξη, αλλά η διάρκεια ζωής της είναι μέχρι το τέλος του προγράμματος.

    ταξινόμηση πίνακα c ++

Ας εξετάσουμε ένα παράδειγμα μεταβλητών στατικών μελών σε μια τάξη.

#include using namespace std class Παράδειγμα {static int x public: void function1 () {x ++} void function2 () {cout<<'x = '<

Παραγωγή:

τα εκπαιδευτικά μου sql για αρχάριους

Από την παραπάνω έξοδο, μπορούμε να δούμε ότι η μεταβλητή «x» μοιράζεται σε όλα τα αντικείμενα. Για να κατανοήσουμε λεπτομερώς την έννοια των μεταβλητών στατικών δεδομένων μπορούμε να σκεφτούμε μια βιβλιοθήκη όπου υπάρχουν πολλά βιβλία τοποθετημένα σε διαφορετικά ράφια. Θεωρήστε τη βιβλιοθήκη ως τάξη, θέση ενός συγκεκριμένου βιβλίου «x» ως στατική μεταβλητή μέλους και μαθητές ως αντικείμενα της τάξης. Όταν ο πρώτος μαθητήςέφτασε τοποθετεί το «x» σε μια νέα θέση τώρα όταν φτάσει ένας άλλος μαθητής «x» δεν θα επιστρέψει στην αρχική του θέση, αλλά θα παραμείνει εκεί που το άφησε ο πρώτος μαθητής.

Στατικές λειτουργίες μελών στο C ++

Όπως οι μεταβλητές στατικών μελών έχουμε συναρτήσεις στατικών μελών που χρησιμοποιούνται για συγκεκριμένο σκοπό. Για να δημιουργήσουμε μια συνάρτηση στατικού μέλους πρέπει να χρησιμοποιήσουμε τη στατική λέξη-κλειδί ενώ δηλώνουμε τη συνάρτηση. Δεδομένου ότι οι μεταβλητές στατικών μελών είναι ιδιότητες κλάσης και όχι ιδιότητες αντικειμένου, για να αποκτήσουμε πρόσβαση σε αυτές πρέπει να χρησιμοποιήσουμε το όνομα κλάσης αντί για το όνομα αντικειμένου.

Ιδιότητες των λειτουργιών στατικού μέλους:

  1. Μια στατική συνάρτηση μπορεί να έχει πρόσβαση μόνο σε άλλες στατικές μεταβλητές ή συναρτήσεις που υπάρχουν στην ίδια τάξη

  2. Οι συναρτήσεις στατικών μελών καλούνται χρησιμοποιώντας το όνομα κλάσης. Σύνταξη-class_name :: function_name ()

Ας δούμε ένα κλασικό παράδειγμα για να κατανοήσουμε λεπτομερώς την έννοια των λειτουργιών στατικού μέλους. Σε αυτό το παράδειγμα, θα κατανοήσουμε όλες τις έννοιες που σχετίζονται με τις λειτουργίες στατικών μελών.

#include using namespace std class Παράδειγμα {static int Number int n public: void set_n () {n = ++ Number} void show_n () {cout<<'value of n = '<

Από την παραπάνω έξοδο, μπορούμε να δούμε ότι η τιμή της μεταβλητής «n» είναι διαφορετική και για τα αντικείμενα «example1» και «example2» της κλάσης «Παράδειγμα». Δεδομένου ότι η μεταβλητή 'Number' είναι μια μεταβλητή κλάσης, η τιμή της είναι η ίδια και για τα αντικείμενα 'example1' και 'example2'. Οι μεταβλητές και οι συναρτήσεις στατικών μελών χρησιμοποιούνται όταν κοινοποιούνται κοινές τιμές σε όλα τα αντικείμενα. Κατά τον προγραμματισμό, η χρήση στατικής λέξης-κλειδιού πρέπει να γίνεται με σύνεση.

Με αυτό, καταλήγουμε στο τέλος αυτού του άρθρου σχετικά με τη λειτουργία στατικού μέλους στο c ++. Εάν θέλετε να μάθετε περισσότερα, δείτε το από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία μάθησης. Το μάθημα εκπαίδευσης και πιστοποίησης Java J2EE και SOA της Edureka έχει σχεδιαστεί για να σας εκπαιδεύσει τόσο για βασικές όσο και για προχωρημένες ιδέες Java μαζί με διάφορα πλαίσια Java όπως το Hibernate & Spring

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του ιστολογίου και θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό.