2012-07-03 2 views
0

J'ai une petite question au sujet d'un morceau de code que j'ai écrit:Référence objet non défini à l'instance d'un objet (XNA C#)

for (int x = 0; x < width; x++) 
{ 
    for (int y = 0; y < height; y++) 
    { 
      map.Add(main.Stone); 
      Vector2 vec = new Vector2(x * 16, y * 16); 
      pos.Add(vec); 
    } 
} 

Je reçois une erreur à pos.Add(vec); dire que la référence est null même si je l'ai déclaré dans la ligne ci-dessus. Je suis assez nouveau à XNA donc c'est probablement quelque chose de très simple, mais je n'arrive pas à le comprendre.

+2

Où 'pos' est-il déclaré et initialisé? –

+1

pos est null. Vérifiez en utilisant le débogueur. –

Répondre

0

pos est la référence null, pas vec. Où avez-vous déclaré pos?

+0

Peut-être que la classe principale transmettait une valeur nulle à la méthode. Pas moyen de le dire sans voir plus de votre code. –

+0

Il a été déclaré dans ma méthode principale, puis envoyé à cette classe à partir de là via les paramètres de la fonction – blueLine

+0

Oh>. Pos; et il n'a pas encore été instancié. Tout ce que j'avais à faire était de le changer en Liste Pos = new List () ;. – blueLine

1

pos est null.

vec ne peut pas être nul car il est déclaré ci-dessus en utilisant l'entité de type valeur (entiers).

Vérifiez à l'aide du débogueur.

Questions connexes