noob question

A

azz131

Hi, i am trying to access a field in an array of objects but i get this
error "Exception System.NullReferenceException was thrown in debuggee:Object
reference not set to an instance of an object".What am i doing wrong?

using System;

using System.Collections.Generic;

namespace ObjectArray

{

class MyClass

{

public int x=0;

}


class MainClass

{

string a;

public static void Main(string[] args)

{

MyClass[] myobject=new MyClass[10];

myobject[1].x=10;// error here


Console.ReadLine();

}

}

}
 
D

Dom

You've only created an array of 10 objects. Each one is null. You
need to create and object for each of them.

myobject[0] = new MyClass (...);
....
myobject[9] = new MyClass (...);


Dom
 
J

Jon Skeet [C# MVP]

azz131 said:
Hi, i am trying to access a field in an array of objects but i get this
error "Exception System.NullReferenceException was thrown in debuggee:Object
reference not set to an instance of an object".What am i doing wrong?

This line:

MyClass[] myobject=new MyClass[10];

creates an array of 10 elements. Initially, every element is a null
reference. That hasn't created any instances of MyClass itself. So you
need to do:

myobject[0] = new MyClass();

before you can do myobject[0].x = 10;
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top