Συνάρτηση Vector Resize () σε C ++

Vector Resize Function C



Το διάνυσμα είναι μια πολύ χρήσιμη κατηγορία C ++ για τη δημιουργία του δυναμικού πίνακα. Το μέγεθος του διανύσματος μπορεί να αλλάξει ανά πάσα στιγμή για να λύσει οποιοδήποτε πρόβλημα προγραμματισμού. Υπάρχουν πολλές ενσωματωμένες συναρτήσεις στο C ++ για την εκτέλεση των διαφορετικών τύπων εργασιών σε ένα διανυσματικό κοντέινερ. Η συνάρτηση αλλαγής μεγέθους () είναι μία από αυτές. Χρησιμοποιείται για την αλλαγή του μεγέθους του διανύσματος. Το μέγεθος του διανύσματος μπορεί να αυξηθεί ή να μειωθεί χρησιμοποιώντας αυτήν τη συνάρτηση. Οι χρήσεις της συνάρτησης αλλαγής μεγέθους () στο διάνυσμα C ++ έχουν εξηγηθεί σε αυτό το σεμινάριο.

Σύνταξη:

Η συνάρτηση αλλαγής μεγέθους () μπορεί να χρησιμοποιηθεί με πολλούς τρόπους. Δύο συντακτικά αυτής της συνάρτησης δίνονται παρακάτω.







κενόςαλλαγή μεγέθους(size_type n)

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



κενόςαλλαγή μεγέθους(size_type n,constτύπος_τιμής&αξία)?

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



Και οι δύο συνάρτηση αλλαγής μεγέθους () δεν επιστρέφουν τίποτα.





Προαπαιτούμενο:

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

Παράδειγμα-1: Μειώστε το μέγεθος του διανύσματος

Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να ελέγξετε πώς να μειώσετε το μέγεθος του διανύσματος χρησιμοποιώντας τη συνάρτηση resize (). Ένα διάνυσμα 4 τιμών συμβολοσειράς έχει δηλωθεί στον κώδικα. Τρεις νέες τιμές έχουν εισαχθεί στο διάνυσμα μετά την εκτύπωση του αρχικού μεγέθους του διανύσματος. Το μέγεθος του φορέα έχει εκτυπωθεί ξανά μετά την εισαγωγή. Η συνάρτηση αλλαγής μεγέθους () χρησιμοποιήθηκε για τη μείωση του μεγέθους του διανύσματος σε 5. Το μέγεθος του διανύσματος εκτυπώθηκε ξανά μετά τη μείωση του μεγέθους.



// Συμπεριλάβετε τις απαραίτητες βιβλιοθήκες

#περιλαμβάνω

#περιλαμβάνω

χρησιμοποιώντας ονομαστικου χωρουώρες?

intκύριος()

{

// Δηλώστε ένα διάνυσμα τιμών συμβολοσειράς

διάνυσμα<σειρά>>τρόφιμα= {'Κέικ','Ζύμη','Πίτσα','Burger'}?

κόστος << 'Το τρέχον μέγεθος του διανύσματος:' <<τρόφιμα.Μέγεθος() <<endl?

// Προσθέστε τρία στοιχεία

τρόφιμα.push_back('Ζυμαρικά')?

τρόφιμα.push_back('Τηγανητή πατάτα')?

τρόφιμα.push_back('Chryen Fry')?

κόστος << 'Το τρέχον μέγεθος του διανύσματος μετά την εισαγωγή:' <<τρόφιμα.Μέγεθος() <<endl?

// Αλλαγή μεγέθους του διανύσματος

τρόφιμα.αλλαγή μεγέθους(5)?

κόστος << 'Το τρέχον μέγεθος του διανύσματος μετά την αλλαγή μεγέθους:' <<τρόφιμα.Μέγεθος() <<endl?

ΕΠΙΣΤΡΟΦΗ 0?

}

Παραγωγή:

Η ακόλουθη έξοδος θα εμφανιστεί μετά την εκτέλεση του παραπάνω κώδικα. Η έξοδος δείχνει ότι το αρχικό μέγεθος του διανύσματος ήταν 4, το μέγεθος έγινε 7 μετά την εισαγωγή 3 νέων τιμών και το μέγεθος έγινε 5 μετά τη χρήση της συνάρτησης αλλαγής μεγέθους ().

Παράδειγμα-2: Αυξήστε το μέγεθος του διανύσματος

Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να ελέγξετε πώς να αυξήσετε το μέγεθος του διανύσματος χρησιμοποιώντας τη συνάρτηση resize (). Ένα διάνυσμα 5 ακέραιων αριθμών έχει δηλωθεί στον κώδικα. Το μέγεθος του αρχικού διανύσματος έχει τυπωθεί πριν αυξηθεί το μέγεθος του διανύσματος χρησιμοποιώντας τη συνάρτηση αλλαγής μεγέθους (). Το μέγεθος του διανύσματος εκτυπώθηκε ξανά μετά την αλλαγή του μεγέθους στο 8. Στη συνέχεια, 5 αριθμοί έχουν εισαχθεί στο τέλος του διανύσματος και το μέγεθος του τροποποιημένου φορέα έχει εκτυπωθεί ξανά.

// Συμπεριλάβετε τις απαραίτητες βιβλιοθήκες

#περιλαμβάνω

#περιλαμβάνω

χρησιμοποιώντας ονομαστικου χωρουώρες?

intκύριος()

{

// Δηλώστε ένα διάνυσμα ακέραιων τιμών

διάνυσμα<int>>αριθμούς= {10,90,είκοσι,80,30 }?

κόστος << 'Το τρέχον μέγεθος του διανύσματος:' <<αριθμούς.Μέγεθος() <<endl?

// Αλλαγή μεγέθους του διανύσματος

αριθμούς.αλλαγή μεγέθους(8)?

κόστος << 'Το τρέχον μέγεθος του διανύσματος μετά την αλλαγή μεγέθους:' <<αριθμούς.Μέγεθος() <<endl?

// Προσθέστε 5 αριθμούς στο διάνυσμα

αριθμούς.push_back(60)?

αριθμούς.push_back(40)?

αριθμούς.push_back(πενήντα)?

αριθμούς.push_back(70)?

αριθμούς.push_back(100)?

κόστος << 'Το τρέχον μέγεθος του διανύσματος μετά την εισαγωγή:' <<αριθμούς.Μέγεθος() <<endl?

ΕΠΙΣΤΡΟΦΗ 0?

}

Παραγωγή:

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

Παράδειγμα-3: Αλλάξτε το μέγεθος του διανύσματος με τις τιμές

Δημιουργήστε ένα αρχείο C ++ με τον ακόλουθο κώδικα για να ελέγξετε πώς να αλλάξετε το μέγεθος του διανύσματος εισάγοντας την ίδια τιμή πολλές φορές. Ένα διάνυσμα 5 αριθμών float έχει δηλωθεί στον κώδικα. Η συνάρτηση αλλαγής μεγέθους () χρησιμοποιήθηκε για να αλλάξει το μέγεθος του διανύσματος σε 7 και να εισαγάγει τον αριθμό 5.55 στο διάνυσμα δύο φορές. Το περιεχόμενο του αρχικού διανύσματος και του τροποποιημένου φορέα θα εκτυπωθούν μετά την εκτέλεση του κώδικα.

// αλλαγή μεγέθους του διανύσματος

#περιλαμβάνω

#περιλαμβάνω

χρησιμοποιώντας ονομαστικου χωρουώρες?

intκύριος()

{

// Δηλώστε ένα διάνυσμα τιμών float

διάνυσμα<φλοτέρ>>αριθμούς= { 7,89,3,98,5,56,9,65,2.33 }?

κόστος << «Οι τιμές του διανύσματος πριν από το μέγεθος: n'?

// Επαναλάβετε το διάνυσμα χρησιμοποιώντας βρόχο για να εκτυπώσετε τις τιμές

Για(intΕγώ= 0?Εγώ<αριθμούς.Μέγεθος()? ++Εγώ)

κόστος <<αριθμούς[Εγώ] << ''?

κόστος << ' n'?

// Αλλαγή μεγέθους του διανύσματος με τιμές

αριθμούς.αλλαγή μεγέθους(7,5,55)?

κόστος << 'Οι τιμές του διανύσματος μετά το μέγεθος: n'?

// Επαναλάβετε το διάνυσμα χρησιμοποιώντας βρόχο για να εκτυπώσετε τις τιμές

Για(intΕγώ= 0?Εγώ<αριθμούς.Μέγεθος()? ++Εγώ)

κόστος <<αριθμούς[Εγώ] << ''?

κόστος << ' n'?

ΕΠΙΣΤΡΟΦΗ 0?

}

Παραγωγή:

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

Συμπέρασμα:

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