2009-03-29 8 views

Répondre

14

Oui.

Bien que, si je peux spéculer ici, terme C conteneur mieux met l'accent sur la propriété des éléments contenus, par opposition à la collecte de Java , où il n'y a pas de propriété de la mémoire explicite (en raison de la collecte des ordures). Les éléments d'un conteneur C++ sont détruits lorsqu'un conteneur est détruit (par conséquent, les éléments sont contenus dans ou sont détenus). Les éléments Java peuvent continuer à exister si une collection elle-même est récupérée.

+0

Bien que si le conteneur ne contient que des pointeurs, alors les objets eux-mêmes ne sont pas détruits! – hasen

+3

Évidemment. Dans ce cas, les pointeurs * sont des * objets. :) –

6

Container (wikipedia)
Collection (wikipedia)

Si je comprends bien - usualy cette différence est non significative. Lorsque nous parlons de groupe d'objets, nous disons "collection d'objets".
Si nous parlons de structure de données qui contiennent un groupe d'objets, nous disons conteneur.

par exemple: std :: vector < int> - collection d'ints ou vecteur de conteneur qui contient ints.