Πώς να αξιοποιήσετε καλύτερα τον χειριστή ανάλυσης πεδίου στο C ++;



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

Όπως υποδηλώνει το όνομα, ο τελεστής ανάλυσης εύρους χρησιμοποιείται για τη λήψη των κρυφών ονομάτων λόγω μεταβλητών πεδίων, ώστε να μπορείτε να τα χρησιμοποιήσετε. Σε αυτό το άρθρο θα καταλάβουμε πώς να χρησιμοποιήσουμε τον τελεστή ανάλυσης πεδίου στο C ++ και ποιοι είναι οι διαφορετικοί σκοποί του από το a .

Στο C ++, ο τελεστής ανάλυσης εύρους είναι ::. Ο τελεστής ανάλυσης πεδίου στο C ++ μπορεί να χρησιμοποιηθεί για:





Τώρα ας κατανοήσουμε κάθε σκοπό έναν προς έναν με τη βοήθεια παραδειγμάτων.

Πρόσβαση σε μια καθολική μεταβλητή όταν υπάρχει μια τοπική μεταβλητή με ίδιο όνομα

Μπορείτε να χρησιμοποιήσετε τον τελεστή ανάλυσης εύρους για πρόσβαση στην καθολική μεταβλητή, εάν έχετε μια τοπική μεταβλητή με το ίδιο όνομα. Στο παρακάτω παράδειγμα έχουμε δύο μεταβλητές και το όνομα num με παγκόσμιο και τοπικό εύρος. Επομένως, για να αποκτήσετε πρόσβαση στην καθολική μεταβλητή αριθμού στην κύρια τάξη πρέπει να χρησιμοποιήσετε τον τελεστή ανάλυσης εύρους (δηλαδή :: num).



Παράδειγμα

#include using namespace std int num = 30 // Αρχικοποίηση μιας καθολικής μεταβλητής num int main () {int num = 10 // Αρχικοποίηση της τοπικής μεταβλητής num cout<< 'Value of global num is ' << ::num cout << 'nValue of local num is ' << num return 0 } 

Παραγωγή

Προχωρώντας με αυτό το άρθρο σχετικά με τον Χειριστή Ανάλυσης Πεδίο εφαρμογής στο C ++



Καθορισμός μιας λειτουργίας εκτός κλάσης

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

Παράδειγμα

#include using namespace std class Bike {public: // Just the Function Declaration void Speed ​​()} // Καθορισμός της λειτουργίας Speed ​​εκτός Bike class χρησιμοποιώντας :: void Bike :: Speed ​​() {cout<< 'Speed of Bike is 90 KMPH' } int main() { Bike bike bike.Speed() return 0 } 

Παραγωγή

Προχωρώντας με αυτό το άρθρο σχετικά με τον Χειριστή Ανάλυσης Πεδίο εφαρμογής στο C ++

Πρόσβαση στα στατικά μιας τάξης μεταβλητές

Μπορείτε να αποκτήσετε πρόσβαση στη στατική μεταβλητή της τάξης χρησιμοποιώντας το όνομα κλάσης και τον τελεστή ανάλυσης εύρους (δηλαδή class_name :: static_variable). Μπορείτε να δείτε στο παρακάτω παράδειγμα, δηλώνουμε μια στατική μεταβλητή στην τάξη. Ορίζουμε τη μεταβλητή εκτός της κλάσης χρησιμοποιώντας τον τελεστή ανάλυσης εύρους. Στη συνέχεια, έχουμε πρόσβαση σε αυτό χρησιμοποιώντας το όνομα κλάσης και τον τελεστή ανάλυσης πεδίου.

Παράδειγμα

#include using namespace std class Δοκιμάστε το {static int num1 public: static int num2 // Τοπικές παραμέτρους αποκρύπτει μέλος κλάσης // Το μέλος της τάξης μπορεί να έχει πρόσβαση σε αυτό χρησιμοποιώντας :: void function (int num1) {// num1 στατική μεταβλητή με πρόσβαση :: // παρά την τοπική μεταβλητή num1 cout<< 'Static num1: ' << Try::num1 cout << 'nLocal num1: ' << num1 } } // Defining a static members explicitly using :: int Try::num1 = 10 int Try::num2 = 15 int main() { Try o int num1 = 20 o.function(num1) cout << 'nTry::num2 = ' << Try::num2 return 0 } 

Παραγωγή

Προχωρώντας με αυτό το άρθρο σχετικά με τον Χειριστή Ανάλυσης Πεδίο εφαρμογής στο C ++

Αναφορά σε μια τάξη μέσα σε μια άλλη τάξη

Μπορείτε να δημιουργήσετε ένθετη τάξη με τα ίδια ονόματα μεταβλητών και στις δύο κλάσεις. Μπορείτε να αποκτήσετε πρόσβαση και στις δύο μεταβλητές χρησιμοποιώντας τον τελεστή ανάλυσης εύρους. Για τη μεταβλητή εσωτερικής τάξης, πρέπει να χρησιμοποιήσετε Outer_Class :: Inner_Class :: μεταβλητή.

Παράδειγμα

#include χρησιμοποιώντας namespace std class Outside_class {public: int num class Inside_class {public: int num static int x}} int Outside_class :: Inside_class :: x = 5 int main () {Outside_class A Outside_class :: Inside_class B}

Προχωρώντας με αυτό το άρθρο σχετικά με τον Χειριστή Ανάλυσης Πεδίο εφαρμογής στο C ++

Σε περίπτωση πολλαπλής κληρονομικότητας

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

Στο παρακάτω παράδειγμα, δημιουργούμε δύο γονικές κλάσεις Parent1 & Parent2 και και οι δύο έχουν μεταβλητό αριθμό. Όταν κληρονομούμε και τα δύο στην κλάση Child, μπορούμε να έχουμε πρόσβαση και στις δύο μεταβλητές αριθμού χρησιμοποιώντας το όνομα κλάσης και τον τελεστή ανάλυσης εύρους.

Παράδειγμα

#include using namespace std class Parent1 {protected: int num public: Parent1 () {num = 100}} class Parent2 {protected: int num public: Parent2 () {num = 200}} class Child: public Parent1, public Parent2 { δημόσια: λειτουργία άκυρου () {cout<< 'Parent1's num is ' << Parent1::num cout << 'nParent2's num is ' << Parent2::num } } int main() { Child obj obj.function() return 0 } 

Παραγωγή

Προχωρώντας με αυτό το άρθρο σχετικά με τον Χειριστή Ανάλυσης Πεδίο εφαρμογής στο C ++

Χώρος ονομάτων

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

Παράδειγμα

#include int main () {std :: cout<< 'Hello' << std::endl } 

Παραγωγή

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

Τώρα μετά την εκτέλεση του παραπάνω προγράμματος θα καταλάβατε το Scope Resolution Operator In C ++. Έτσι, έχουμε φτάσει στο τέλος αυτού του άρθρου σχετικά με το «Quicksort in Java». Αν θέλετε να μάθετε περισσότερα, δείτε το Java Training από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία μάθησης. Το μάθημα εκπαίδευσης και πιστοποίησης Java J2EE και SOA της Edureka έχει σχεδιαστεί για να σας εκπαιδεύσει τόσο για βασικές όσο και για προχωρημένες ιδέες Java μαζί με διάφορα πλαίσια Java όπως το Hibernate & Spring

java system.exit (0)

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