2010-07-05 3 views

Répondre

3

La structure est un type de valeur, elle n'est donc pas gérée par GC. Les structs peuvent déclarer des constructeurs, mais ils DOIVENT prendre des paramètres. Copies des structs sont créés et détruits automatiquement par le compilateur, si un constructeur par défaut est inutile

2

Une structure est un type de valeur, cela signifie que, chaque fois que vous y accéder, ou le transmettre, sa valeur est transmise. ("copié")

d'autre part, les classes sont des types de référence. que si vous le transmettez, seule la référence est passée (les deux utilisent maintenant le même objet)

comme vous gérez les classes, et leurs instances comme références, le GC doit vérifier, si toutes les références sont déjà collecté. qui n'est pas nécessaire dans les types de valeur, car ils ne peuvent avoir qu'une seule référence. cela signifie que si l'objet sous-jacent est collecté, ils sont collectés automatiquement.