This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
cpp:stl:array [2020/05/27 16:03] gthanos [Ορισμός και διάτρεξη πίνακα] |
cpp:stl:array [2021/06/06 19:56] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== std::array ====== | ====== std::array ====== | ||
| - | Πρόκειται για μία δομή πίνακα του οποίου το μέγεθος ορίζεται | + | Πρόκειται για μία δομή πίνακα του οποίου το μέγεθος ορίζεται κατά τη δήλωση του πίνακα και παραμένει αμετάβλητο. Μπορείτε να διατρέξετε το πίνακα χρησιμοποιώντας // |
| + | |||
| + | ===== Επίδοση της δομής ===== | ||
| + | |||
| + | * Η πράξη της ένθεσης ή της διαγραφής από τον τέλος του πίνακα έχει σταθερό κόστος **(O(1))**. | ||
| + | * Η πράξη της ένθεσης | ||
| + | * Η πράξη της αναζήτησης είναι γραμμική στο μέγεθος των στοιχείων του πίνακα **(Ο(Ν))**. | ||
| + | * Η πρόσβαση στο i-στο στοιχείο του πίνακα έχει κόστος 1. | ||
| ===== Ορισμός και διάτρεξη πίνακα ===== | ===== Ορισμός και διάτρεξη πίνακα ===== | ||
| Line 39: | Line 47: | ||
| </ | </ | ||
| - | <code cpp array_iterator.cpp> | + | <code cpp array_for.cpp> |
| #include < | #include < | ||
| #include < | #include < | ||
| Line 70: | Line 78: | ||
| </ | </ | ||
| - | Παρατηρούμε ότι στον παραπάνω κώδικα η πρόσβαση εκτός ορίων παράγει τερματισμό του προγράμματος μέσω segmentation fault. Εάν θέλουμε να μπορούμε να ελέγχουμε τις πιθανές λανθασμένες προσπελάσεις μέσω της διαχείρισης ενός exception υπάρχει η ισοδύναμη συνάρτηση [[http:// | + | Παρατηρούμε ότι στον παραπάνω κώδικα η πρόσβαση εκτός ορίων παράγει τερματισμό του προγράμματος μέσω segmentation fault. Εάν θέλουμε να μπορούμε να ελέγχουμε τις πιθανές λανθασμένες προσπελάσεις μέσω της διαχείρισης ενός exception υπάρχει η ισοδύναμη συνάρτηση [[http:// |
| <code cpp array_access_at.cpp> | <code cpp array_access_at.cpp> | ||