Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

C + + Λειτουργία Call λείπει Λίστα Επιχείρημα

Η λειτουργία των C /C + + γλώσσες είναι μια διαδικασία για να επιτευχθεί κάποιο στόχο . Η βασική σύνταξη και ο μηχανισμός της C + + πρόγραμμα κληρονομεί βασικούς κανόνες της αρχικής γλώσσας C και στηρίζεται σε αυτό . Ορίστε τη λειτουργία σε C ​​+ + αντικείμενο ή ως παγκόσμιος λειτουργία? Καλέσετε τη συνάρτηση με τις τιμές που ορίζονται για κάθε παράμετρο . Επιχειρήματα στις λειτουργίες
Η

Ορίστε μια λίστα των μεταβλητών παραμέτρων ως προς τη λειτουργία . Αυτά ονομάζονται «επιχειρήματα ». Μπορείτε επίσης να ορίσετε μια λειτουργία χωρίς παραμέτρους σε όλα : .

ObjectO :: FunctionF ( int arg1 , char * arg2 , διπλά arg3 ) { //Λειτουργία σώματος //έκβαση ποικίλλει ανάλογα με τις τιμές επιχείρημα }
εικόνων λείπουν επιχειρήματα
Η

C + + σας επιτρέπει να καλέσετε μια συνάρτηση χωρίς να ορίζονται τα επιχειρήματά της . Αυτό δεν προκαλεί μεταγλώττισης , link -time ή σφάλμα χρόνου εκτέλεσης . Στην περίπτωση αυτή, η συνάρτηση χρησιμοποιεί προεπιλεγμένες τιμές για τα επιχειρήματα κατά το χρόνο εκτέλεσης . Παρέχετε προεπιλεγμένες τιμές για τα επιχειρήματα δικαίωμα τότε και εκεί :

άκυρη MyFunction ( διπλό d_arg = 0.0 ) {if ( d_arg == 0.0 ) ... else ... }
εικόνων
λειτουργία Υπερφόρτωση
Η

Αυτό είναι ένα πολύ ιδιαίτερο χαρακτηριστικό της C + + . Μπορείτε να " υπερφόρτωση " μια υπάρχουσα ορισμό της συνάρτησης με ένα άλλο . Το όνομα της συνάρτησης παραμένει η ίδια , αλλά ο κατάλογος των argument της είναι διαφορετική . Χρησιμοποιήστε αυτή τη λειτουργία για να υπερφορτώσει τυπικές λειτουργίες της βιβλιοθήκης , καθώς , αλλά μόνο όταν είναι απαραίτητο :

π.χ. int MyFunction ( int a ) ? int MyFunction ( int a , διπλό β) ? int MyFunction ( ) ?

Εδώ , η σύνταξη της συνάρτησης που λέει ο compiler οποία MyFunction να πάρει . Αν δεν περάσει επιχειρήματα , ο τρίτος μπορεί να διαβαστεί . Αν η κλήση της συνάρτησης μοιάζει με αυτό : . " R_val = MyFunction ( 12 ) ? ", Τότε ο compiler χρησιμοποιεί τον δεύτερο ορισμό

Παροχή προκαθορισμένες τιμές για τα επιχειρήματα , όπως φαίνεται στο σημείο 2 , είναι μια μέθοδος συντόμευσης υπερφόρτωση λειτουργία? όμως , λειτουργεί μόνο σε απλές περιπτώσεις
εικόνων υπερφόρτωση Κατασκευαστές Αντικείμενο
Η

Η πραγματική δύναμη της λειτουργίας υπερφόρτωσης σε C + + είναι σε κατασκευαστή υπερφόρτωση . . Ορίστε τον κατασκευαστή ενός αντικειμένου σε δύο ή περισσότερους τρόπους . Με άλλα λόγια , επιτρέπει στον καλούντα να δημιουργήσετε το αντικείμενο με διαφορετικούς τρόπους για διάφορους λόγους - όπως και προς τα πίσω συμβατότητα , φορητότητα και την ευελιξία. Κατασκευαστής για το αντικείμενο MyObject ονομάζεται " MyObject ( ) . « Για παράδειγμα :

ημερομηνία τάξη { int ημέρα , μήνας, έτος ?

Δημόσια : void ημερομηνία ( char * c_date ) ? Κενό ημερομηνία ( int mm , int dd , int εε ) ? άκυρη ημερομηνία ( ) ?

...

}

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

Μέθοδος Α : Ημερομηνία ( " 10/10/2011 " ) ? Μέθοδος B : ημερομηνία ( 10 , 10 , 2011 ) ? Μέθοδος Γ : Ημερομηνία ( ) ?

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

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα