Maison >développement back-end >C++ >Quels sont les types courants dans les conteneurs C++ STL ?

Quels sont les types courants dans les conteneurs C++ STL ?

WBOY
WBOYoriginal
2024-06-02 14:11:56704parcourir

Les types de conteneurs les plus courants en C++ STL sont Vector, List, Deque, Set, Map, Stack et Queue. Ces conteneurs fournissent des solutions pour différents besoins de stockage de données, tels que des tableaux dynamiques, des listes doublement chaînées et des conteneurs associatifs basés sur des clés et des valeurs. En pratique, nous pouvons utiliser des conteneurs STL pour organiser et accéder efficacement aux données, par exemple pour stocker les notes des étudiants.

C++ STL容器中常见类型有哪些?

Types courants dans les conteneurs STL C++

La bibliothèque de modèles standard (STL) est un ensemble de conteneurs et d'algorithmes courants fournis dans la bibliothèque standard C++. Ces conteneurs sont utilisés pour stocker et organiser les données, et STL contient différents types de conteneurs pour répondre aux différents besoins de stockage de données.

Les types de conteneurs STL les plus courants incluent :

  • Vecteur : Tableau dynamique pour un stockage et un accès efficaces aux éléments.
  • Liste : Liste doublement chaînée, permettant une insertion et une suppression rapides d'éléments.
  • Deque : File d'attente à double extrémité, prend en charge des opérations d'insertion et de suppression efficaces.
  • Ensemble : Un ensemble trié par valeur et ne contient pas d'éléments en double.
  • Map : Un conteneur associatif trié par clé, chaque clé correspondant à une valeur.
  • Stack : Structure de données Last-in-First-Out (LIFO) qui permet une insertion et une suppression rapides d'éléments.
  • File d'attente : Structure de données premier entré, premier sorti (FIFO) qui permet une insertion et une suppression rapides d'éléments.

Cas pratique :

Considérons un programme qui doit stocker les scores des élèves. Nous pouvons utiliser des conteneurs STL pour gérer et accéder efficacement aux données.

#include <iostream>
#include <vector>
#include <map>

using namespace std;

int main() {
  // 创建一个学生成绩的vector
  vector<int> grades;

  // 加入一些成绩
  grades.push_back(90);
  grades.push_back(85);
  grades.push_back(75);

  // 创建一个学生姓名到成绩的map
  map<string, int> student_grades;

  // 加入一些学生姓名和成绩
  student_grades["John"] = 90;
  student_grades["Jane"] = 85;
  student_grades["Jim"] = 75;

  // 访问学生成绩
  cout << "John's grade: " << student_grades["John"] << endl;

  // 遍历vector中的成绩
  for (int grade : grades) {
    cout << grade << " ";
  }
  cout << endl;

  return 0;
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn