首页 > 解决方案 > 对象引用(c#)未设置为对象的实例

问题描述

using System;
namespace po {
  public class small {
    public string nem;
    public bool av = true;
    public void set_nem() {
      Console.WriteLine("enter name smaller");
      nem = Console.ReadLine();
    }
  }
  public class normal {
    public string nem;
    public small[] _small = new small[10];
    public void add_small() {
      for (int i = 0; i < 10; i++)
        _small[i] = new small();

      for (int i = 0; i < 10; i++) {
        if (_small[i].av == true){
          _small[i].set_nem();
          i = 11;
          }
      }

    }
    public void set_nem() {
      Console.WriteLine("enter name normal");
      nem = Console.ReadLine();
    }
  }

  public class big {
    public normal[] _normal = new normal[10];
    public void setup_big() {
      for (int i = 0; i < 10; i++)
        _normal[i] = new normal();
    }
  }

  class MainClass {
    public static void Main(string[] args) {
      var _big = new big();
      
      _big._normal[0]._small[0].set_nem();

    }
  }

}

我得到的错误是这个

Unhandled Exception:
System.NullReferenceException: Object reference not set to an instance of an object
  at po.MainClass.Main (System.String[] args) [0x00010] in <a57fc2b0e49a4f36b31cfb468d3661d3>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
  at po.MainClass.Main (System.String[] args) [0x00010] in <a57fc2b0e49a4f36b31cfb468d3661d3>:0 

我知道,这是初学者经常犯的一个错误,但我真的不知道问题出在哪里。我尝试过为小而无用的构造函数,我只是使问题复杂化。我尝试在线搜索此错误并发现:

C# System.NullReferenceException:对象引用未设置为对象的实例>

错误是一样的,但我真的无法修复它。

标签: c#

解决方案


推荐阅读