Avatar ·

Quelle est la différence entre STL et la bibliothèque standard C++ ?

Bonjour, collègues ! Je suis un développeur C++ débutant et je rencontre constamment les termes "STL" et "bibliothèque standard C++". Apparemment, tout le monde les utilise comme synonymes, mais je sens que ce n'est pas tout à fait la même chose. Par exemple, j'écris ce code : ```cpp #include #include #include int main() { std::vector numbers = {3, 1, 4, 1, 5, 9}; std::sort(numbers.begin(), numbers.end()); for (int n : numbers) { std::cout << n << " "; } return 0; } ``` Ici, j'utilise `` et `` — j'ai l'habitude d'appeler ça STL. Mais `` et `std::cout` font aussi partie de la bibliothèque standard. Donc, STL n'est qu'une partie de la bibliothèque standard ? Ou ce sont des choses différentes ? Sur Internet, il y a des tonnes de débats : certains disent que STL est morte, d'autres que c'est le fondement du C++. J'ai besoin d'une compréhension claire : qu'est-ce qui est exactement considéré comme STL, et qu'est-ce qui est la bibliothèque standard ? Et pourquoi cette confusion existe-t-elle ? Je serais reconnaissant pour une réponse détaillée.