This is an old revision of the document!
Table of Contents
Κοινές συναρτήσεις για όλους τους containers
Εισαγωγή στοιχείου σε container
Με εξαίρεση την κλάση std::array που το μέγεθος των πινάκων που δημιουργεί είναι σταθερό και δηλώνεται κατά τη δήλωση του πίνακα, οι υπόλοιποι containers μπορούν να μεταβάλλουν το αριθμό των στοιχείων που αποθηκεύουν. Για την εισαγωγή ενός στοιχείου σε έναν container υπάρχουν οι συναρτήσεις insert για την εισαγωγή ενός αντιγράφου του στοιχείου στον container και emplace για την δημιουργία ενός αντικειμένου και εισαγωγή του στον container. Επιπλέον, μόνο για τους sequence containers η insert λαμβάνει ως πρώτο όρισμα έναν iterator που δηλώνει τη θέση εισαγωγής του στοιχείου στον container. Παραδείγματα: <code cpp student_list_insert.cpp> #include <iostream> std::cout #include <algorithm> std::copy #include <list> std::list #include “Student.hpp”
int main () {
Student students[] = { Student("Peter_Pan", 1234), Student("Tinker_Bell", 1235) }; std::cerr << "----- Init list -----" << std::endl; std::list<Student> mylist; for(int i=0; i<2; i++) { mylist.insert(mylist.begin(),students[i]); // copy-constructor, insert first mylist.insert(mylist.end(),students[i]); // copy-constructor, insert last } mylist.emplace(mylist.end(), "Mickey_Mouse", 1237); // argument construct, insert last std::cerr << "-------------------------\n"; std::cerr << "mylist contains:"; for (std::list<Student>::iterator it = mylist.begin(); it!=mylist.end(); ++it) std::cerr << ' ' << *it; std::cerr << std::endl; std::cerr << "-------------------------\n"; return 0;
} </code>