Les classes conteneurs de STL rendent la programmation productif, sûr et robuste. Ils sont des tableaux intelligents qui effectuent allocation de mémoire automatiquement , permettant de redimensionner , vous permettent de passer des variables par référence, insérer des éléments à n'importe quel moment , le tout avec efficacité flamboyant. Ils fournissent une bonne raison de passer de C avec ses tableaux muets à C + + . STL propose deux types de classes de conteneurs : simple et associative , où une clé est associé à chaque objet stocké . Choses que vous devez connaissances de base du langage C + + compilateur C + + et de préférence un environnement de développement intégré Afficher plus d' instructions 1 Lire et éventuellement mémoriser les deux catégories des classes de conteneurs . Les mémoriser jamais fait de mal à personne et sera bénéfique pour vous sur le long terme conteneurs simples: . Vecteur <> , listes < > , <>, pile file d'attente <>, deque < > associatifs Conteneurs: carte < > , set <> , multimap <> , multiset <> 2 Renseignez-vous sur toutes les classes de conteneurs en étant montré comment un simple conteneur peut être utilisé. Ce tutoriel va illustrer les méthodes de vecteur < > . 3 Attribuer une taille au vecteur . Vous pouvez attribuer taille du vecteur en utilisant l'un des constructeurs surchargés . En outre, vous pouvez utiliser la réserve () ou méthode assign () après avoir déclaré un vecteur. Toutes les méthodes sont indiquées ci-dessous : Images vectorielles arr (50); //spécifier la capacité Images vectorielles arr (50, 17); //spécifier la capacité et de donner tous les éléments d'une valeur par défaut (17) Photos vecteur arr2 ( arr ) ; //initialiser un vecteur d'une autre vectorielles libres vecteur vec ; vec.reserve (100); //ou l'utilisation de réserve () pour allouer de la mémoire 4 itérer à travers un vecteur. Vous pouvez le faire en utilisant l'indice Standard [ de l'opérateur ] ou par itérateurs , qui sont une particularité STL . Leurs capacités sont au-delà du cadre de ce tutoriel . Les extraits de code suivants montrent la taille (), begin () et les membres de gamme (): //en utilisant l'indexation norme for (int i = 0; } i cout //utilisation d'itérateurs pour ( vector < > :: iterator iter = vec.begin (); iter = vec.end (); ! iter + +) { cout } 5 Ajouter un élément à la fin , supprimer cet élément, insérer un élément dans le milieu et retourner la taille du conteneur Vous pouvez effectuer toutes ces fonctions en utilisant le push_back (), pop_back (), insert () et size () méthodes , respectivement, comme indiqué ci-dessous : . < br > vec.push_back (35); vec.pop_back (); vec.insert (pos , 19) ; //POS est le cout Situation 6 Effacer les éléments à l'intérieur une gamme , effacer le reste des éléments et assurez-vous que le vecteur est vide. Pour cela, vous utilisez les fonctions de membre erase () , clear () et empty () . vec.erase ( vec.begin () + 5, vec.end () - 5); //effacer tous les éléments sauf le premier et le dernier 5 vec.clear (); //effacer tous les éléments si (true == vec.empty () ) {...} //check si vecteur est vide 7 Découvrez toutes les fonctions de membres proposés dans le vecteur <> Beaucoup sont communs à travers le reste des classes de conteneurs : . _destroy (), _Eq (), _lt (), _Ucopy (), _Ufill (), assign ( ), à ( ) , begin () , back () , la capacité (), fin clear () , empty () , () , erase () , avant ( ) , get_allocator (), max_size (), insert () , opérateur = , opérateur [] , pop_back (), push_back (), rbegin (), déchirer (), réserve (), de redimensionnement ( ) , la taille ( ), swap (), ~ vecteur (). 8 Assurez -vous d'inclure le fichier d'en-tête vector.h en haut de votre fichier source avant de tester ce code pour vous-même. chaque classe conteneur possède son propre fichier d'en-tête . une liste <> nécessitera list.h , une file d'attente <> nécessitera queue.h , et ainsi de suite .
|