Ο δυναμικός πίνακας μπορεί να εφαρμοστεί χρησιμοποιώντας ένα διάνυσμα σε C ++. Τα στοιχεία μπορούν να προστεθούν στο διάνυσμα με διαφορετικούς τρόπους. Η συνάρτηση push_back () είναι ένας από τους τρόπους εισαγωγής ενός νέου στοιχείου στο τέλος του διανύσματος που αυξάνει το μέγεθος του διανύσματος κατά 1. Αυτή η συνάρτηση είναι χρήσιμη όταν απαιτείται ένα στοιχείο για προσθήκη στο διάνυσμα. Εάν ο τύπος δεδομένων του διανύσματος δεν υποστηρίζει την τιμή που πέρασε το όρισμα αυτής της συνάρτησης, τότε θα δημιουργηθεί μια εξαίρεση και δεν θα εισαχθούν δεδομένα. Ο τρόπος εισαγωγής δεδομένων σε διάνυσμα χρησιμοποιώντας τη συνάρτηση push_back () παρουσιάζεται σε αυτό το σεμινάριο.
Σύνταξη:
διάνυσμα::push_back(value_type n)?Η τιμή του n θα εισαχθεί στο τέλος του διανύσματος εάν ο τύπος δεδομένων του διανύσματος υποστηρίζει τον τύπο δεδομένων του n. Δεν επιστρέφει τίποτα.
Προαπαιτούμενο:
Πριν ελέγξετε τα παραδείγματα αυτού του σεμιναρίου, πρέπει να ελέγξετε ότι ο μεταγλωττιστής g ++ είναι εγκατεστημένος ή όχι στο σύστημα. Εάν χρησιμοποιείτε Visual Studio Code, εγκαταστήστε τις απαραίτητες επεκτάσεις για να μεταγλωττίσετε τον πηγαίο κώδικα C ++ για να δημιουργήσετε τον εκτελέσιμο κώδικα. Εδώ, η εφαρμογή Visual Studio Code χρησιμοποιήθηκε για τη μεταγλώττιση και την εκτέλεση του κώδικα C ++. Διαφορετικές χρήσεις της συνάρτησης push_back () για την εισαγωγή στοιχείων (ων) σε ένα διάνυσμα παρουσιάζονται στο επόμενο μέρος αυτού του σεμιναρίου.
Παράδειγμα-1: Προσθήκη πολλαπλών στοιχείων στο τέλος του διανύσματος
Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να εισαγάγετε πολλά στοιχεία στο τέλος του διανύσματος χρησιμοποιώντας τη συνάρτηση push_back (). Στον κώδικα έχει οριστεί ένα διάνυσμα τριών τιμών συμβολοσειράς. Η συνάρτηση push_back () έχει κληθεί τρεις φορές για να εισαγάγει τρία στοιχεία στο τέλος του διανύσματος. Το περιεχόμενο του διανύσματος θα εκτυπωθεί πριν και μετά την εισαγωγή των στοιχείων.
// Συμπεριλάβετε τις απαραίτητες βιβλιοθήκες
#περιλαμβάνω
#περιλαμβάνω
χρησιμοποιώντας ονομαστικου χωρουώρες?
intκύριος()
{
// Δηλώστε ένα διάνυσμα τιμών συμβολοσειράς
διάνυσμα<σειρά>>πουλιά= {'Γκρι παπαγάλος','Diamond Dove','Κοκτέιλ'}?
κόστος << «Οι τιμές του διανύσματος πριν από την εισαγωγή: n'?
// Επαναλάβετε το διάνυσμα χρησιμοποιώντας βρόχο για να εκτυπώσετε τις τιμές
Για(intΕγώ= 0?Εγώ<πουλιά.Μέγεθος()? ++Εγώ)
κόστος <<πουλιά[Εγώ] << ''?
κόστος << ' n'?
/ *
Προσθέστε τρεις τιμές στο τέλος του vectior
χρησιμοποιώντας τη συνάρτηση push_back ()
* /
πουλιά.push_back('Mayna')?
πουλιά.push_back('Budgies')?
πουλιά.push_back('Είδος ψιττακού')?
κόστος << «Οι τιμές του διανύσματος μετά την εισαγωγή: n'?
// Επαναλάβετε το διάνυσμα χρησιμοποιώντας βρόχο για να εκτυπώσετε τις τιμές
Για(intΕγώ= 0?Εγώ<πουλιά.Μέγεθος()? ++Εγώ)
κόστος <<πουλιά[Εγώ] << ''?
κόστος << ' n'?
ΕΠΙΣΤΡΟΦΗ 0?
}
Παραγωγή:
Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του παραπάνω κώδικα. Η έξοδος δείχνει ότι τρία νέα στοιχεία έχουν εισαχθεί στο τέλος του διανύσματος.
Παράδειγμα-2: Εισαγάγετε τιμές στο διάνυσμα με εισαγωγή
Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να εισαγάγετε το στοιχείο σε ένα κενό διάνυσμα, παίρνοντας τιμές από τον χρήστη και χρησιμοποιώντας τη συνάρτηση push_back (). Στον κώδικα έχει δηλωθεί ένα κενό διάνυσμα τύπου ακέραιων δεδομένων. Στη συνέχεια, ένας βρόχος «για» παίρνει 5 αριθμούς από τον χρήστη και εισάγει τους αριθμούς στο διάνυσμα χρησιμοποιώντας τη συνάρτηση push_back (). Το περιεχόμενο του φορέα θα εκτυπωθεί μετά την εισαγωγή.
// Συμπεριλάβετε τις απαραίτητες βιβλιοθήκες#περιλαμβάνω
#περιλαμβάνω
χρησιμοποιώντας ονομαστικου χωρουώρες?
intκύριος()
{
// Δηλώστε ένα ακέραιο διάνυσμα
διάνυσμα<int>>intVector?
// Δηλώστε έναν ακέραιο αριθμό
intαριθμός?
κόστος << 'Εισαγάγετε 5 αριθμούς: n'?
/ *
Επαναλάβετε το βρόχο για 5 φορές για να εισαγάγετε 5 ακέραιες τιμές
στο διάνυσμα χρησιμοποιώντας τη συνάρτηση push_back ()
* /
Για( intΕγώ=0?Εγώ< 5?Εγώ++) {
τζιν >>αριθμός?
intVector.push_back (αριθμός)?
}
κόστος << «Οι τιμές του διανύσματος μετά την εισαγωγή: n'?
// Επαναλάβετε το διάνυσμα χρησιμοποιώντας βρόχο για να εκτυπώσετε τις τιμές
Για(intΕγώ= 0?Εγώ<intVector.Μέγεθος()? ++Εγώ)
κόστος <<intVector[Εγώ] << ''?
κόστος << ' n'?
ΕΠΙΣΤΡΟΦΗ 0?
}
Παραγωγή:
Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του παραπάνω κώδικα. Η έξοδος δείχνει ότι οι πέντε αριθμοί που λαμβάνονται από τον χρήστη έχουν εισαχθεί στο διάνυσμα.
Παράδειγμα-3: Εισαγάγετε τιμές σε διάνυσμα με βάση τη συγκεκριμένη συνθήκη
Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να εισαγάγετε τους συγκεκριμένους αριθμούς από έναν ακέραιο πίνακα σε ένα κενό διάνυσμα. Ένα κενό διάνυσμα και ένας πίνακας 10 ακέραιων αριθμών έχουν δηλωθεί στον κώδικα. Ο βρόχος 'for' έχει χρησιμοποιηθεί για να επαναλάβει κάθε τιμή του πίνακα και να εισαγάγει τον αριθμό στο διάνυσμα χρησιμοποιώντας τη συνάρτηση push_back () εάν ο αριθμός είναι μικρότερος από 30 ή μεγαλύτερος από 60. Το περιεχόμενο του διανύσματος θα εκτυπωθεί χρησιμοποιώντας το συνάρτηση display_vector () μετά την εισαγωγή.
// Συμπεριλάβετε τις απαραίτητες βιβλιοθήκες#περιλαμβάνω
#περιλαμβάνω
χρησιμοποιώντας ονομαστικου χωρουώρες?
// Εμφάνιση του διανύσματος
κενόςδιάνυσμα_εμφάνισης(διάνυσμα<int>>αριθ)
{
// Εκτυπώστε τις τιμές του διανύσματος χρησιμοποιώντας βρόχο
Για(αυτοαυτός=αριθ.να αρχίσει()?αυτός!=αριθ.τέλος() ?αυτός++)
κόστος << *αυτός<< ''?
// Προσθήκη νέας γραμμής
κόστος << ' n'?
}
intκύριος()
{
// Δηλώστε ένα ακέραιο διάνυσμα
διάνυσμα<int>>intVector?
// Δηλώστε μια σειρά αριθμών
intmyArray[10] = { 9,Τέσσερα πέντε,13,19,30,82,71,πενήντα,35,42 }?
/ *
Επαναλάβετε το βρόχο για να διαβάσετε κάθε στοιχείο του πίνακα
και εισάγετε αυτές τις τιμές στο διάνυσμα
που είναι μικρότερες από 30 και μεγαλύτερες από 60
χρησιμοποιώντας τη συνάρτηση push_back ()
* /
Για (intΕγώ=0?Εγώ< 10?Εγώ++)
αν(myArray[Εγώ] < 30
κόστος << 'Οι τιμές του διανύσματος μετά την εισαγωγή:' <<endl?
διάνυσμα_εμφάνισης(intVector)?
ΕΠΙΣΤΡΟΦΗ 0?
}
Παραγωγή:
Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του παραπάνω κώδικα. Η έξοδος δείχνει ότι οι αριθμοί 9, 13, 19, 82 και 71 έχουν εισαχθεί στο διάνυσμα.
Συμπέρασμα:
Υπάρχουν πολλές συναρτήσεις στο C ++ για εισαγωγή δεδομένων στην αρχή ή στο τέλος ή σε οποιαδήποτε συγκεκριμένη θέση του διανύσματος, όπως push_front (), insert (), κ.λπ. Η χρήση της συνάρτησης push_back () θα διαγραφεί αφού εξασκηθείτε στα παραδείγματα που παρουσιάζονται σε αυτό το σεμινάριο Το