Σπίτι Προσωπικά Οικονομικά Πώς λειτουργεί ο πολυμορφισμός σε C ++ - dummies

Πώς λειτουργεί ο πολυμορφισμός σε C ++ - dummies

Βίντεο: James Earl Ray Interview: Assassin of Civil Rights and Anti-War Activist Dr. Martin Luther King, Jr. 2024

Βίντεο: James Earl Ray Interview: Assassin of Civil Rights and Anti-War Activist Dr. Martin Luther King, Jr. 2024
Anonim

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

Μπορεί να εκπλαγείτε ότι η προεπιλογή για την C ++ είναι έγκαιρη. Η έξοδος του προγράμματος OverloadOverride εμφανίζεται ως εξής:

Είμαστε στο Student:: calcTuition Είμαστε στο Student:: calcTuition Πατήστε Enter για να συνεχίσετε …

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

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

, όπως φαίνεται στην παρακάτω τροποποίηση της δήλωσης στο OverloadOveride < πρόγραμμα: Φοιτητής τάξης {public: virtual void calcTuition () {cout << "είμαστε στο Student:: calcTuition" endl;}}; Η λέξη

εικονική

που λέει στο C ++ ότι η calcTuition () είναι μια λειτουργία πολυμορφικού μέλους. Δηλαδή, η δήλωσή της (virtual) σημαίνει ότι οι κλήσεις προς αυτήν θα δεσμευτούν αργά αν υπάρχουν αμφιβολίες ως προς τον τύπο χρόνου εκτέλεσης του αντικειμένου με το οποίο καλείται CalcTution ().

OverloadOveride

με CalcTution () δηλώνει την εικονική παράγει την ακόλουθη έξοδο: Είμαστε στο Student:: calcTuition Είμαστε στο GraduateStudent: Εισαγάγετε για να συνεχίσετε … Εάν είστε εξοικειωμένοι με το εργαλείο εντοπισμού σφαλμάτων που συνοδεύει το περιβάλλον C ++, πρέπει πραγματικά να κάνετε ένα βήμα μέσω αυτού του παραδείγματος. Είναι πολύ ωραίο να βλέπετε το πρόγραμμα με ένα βήμα στο Student:: calcTution () για πρώτη φορά που ονομάζεται fn () αλλά στο GraduateStudent:: calTution () στη δεύτερη κλήση. Δεν μπορείτε πραγματικά να εκτιμήσετε τον πολυμορφισμό μέχρι να το δοκιμάσετε.


Πρέπει να δηλώσετε τη λειτουργία μόνο στην βασική κλάση. Η "εικονικότητα" μεταφέρεται αυτόματα στην υποκλάση. Μερικές φορές, όμως, οι προγραμματιστές ακολουθούν το πρότυπο κωδικοποίησης της δήλωσης της λειτουργίας virtual σχεδόν παντού (ουσιαστικά).

Πώς λειτουργεί ο πολυμορφισμός σε C ++ - dummies

Η επιλογή των συντακτών

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Πώς να αλλάξετε τη ρύθμιση ισορροπίας λευκού σε ετικέτες Canon EOS 70D

Χρησιμοποιώντας το Ο έλεγχος εξισορρόπησης λευκού στο Canon EOS 70D σας μπορεί εύκολα και γρήγορα να διορθώσει προβλήματα χρώματος. Οι διαθέσιμες ρυθμίσεις ισορροπίας λευκού απεικονίζονται με τα σύμβολα που εμφανίζονται στον παρακάτω πίνακα. Μπορείτε να δείτε την τρέχουσα ρύθμιση στην οθόνη Ρυθμίσεις λήψης, όπως φαίνεται στο παρακάτω σχήμα. Για να προσαρμόσετε τη ρύθμιση, έχετε ...

Η επιλογή των συντακτών

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

Προετοιμασία αντιγράφου TIFF ψηφιακής εικόνας για δημοσίευση - ανδρεικέλες

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

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Εξάγοντας το περίγραμμα επιλογής του ψηφιακού σας επεξεργαστή εικόνας - ανδρείκελα

Η πρώτη προσπάθεια. Αναμείνετε να βελτιώσετε το περίγραμμα επιλογής σας τουλάχιστον λίγο. Μπορείτε να βελτιώσετε το περίγραμμα σας με διάφορους τρόπους: Αντίστροφη περιγράμματος επιλογής: Απλά χρησιμοποιήστε την εντολή Invert (ή την αντίστοιχη εντολή του προγράμματος). Προσθέστε σε περίγραμμα επιλογής: ...

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

Επιλογή από τις άκρες της ψηφιακής εικόνας - ανδρείκελα

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

Η επιλογή των συντακτών

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Πώς να χρησιμοποιείτε το παράθυρο μητρώου του QuickBooks 2010 - dummies

Για να εργαστείτε ευκολότερα με το παράθυρο του Μητρώου και να ελέγξετε τον τρόπο εμφάνισής του: Το κουμπί Μετάβαση: Εμφανίζει το παράθυρο διαλόγου Μετάβαση (Go To). Αυτό το παράθυρο διαλόγου σάς επιτρέπει να αναζητήσετε μια συναλλαγή στο παράθυρο "Εγγραφή". Για παράδειγμα, μπορείτε να αναζητήσετε ...

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Πώς να εργάζεστε με έναν υπάρχοντα προϋπολογισμό σε QuickBooks - dummies

Σε μεγάλες εταιρείες με εκατοντάδες ή χιλιάδες εργαζόμενοι, δύο ή τρία άτομα δαπανούν μεγάλο μέρος ή και ολόκληρο το χρόνο εργασίας τους με τα στοιχεία που έχουν εγγραφεί στον προϋπολογισμό. Για να επεξεργαστείτε έναν υπάρχοντα προϋπολογισμό στο QuickBooks, ακολουθήστε τα παρακάτω βήματα:

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

Πώς να χρησιμοποιείτε τα κουτιά παραθύρων αναφορών του QuickBooks - dummies

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