【问题标题】:Object refrence not set to an instance of an object in array [duplicate]对象引用未设置为数组中对象的实例[重复]
【发布时间】:2014-06-06 02:04:07
【问题描述】:

我对 C# 编程很陌生,所以我的问题可能听起来很傻

实际上我正在创建一个多维字符串数组,例如

public class master
    {
       public List<string> user_selected = new List<string>();
       public List<string> available = new List<string>();
       public List<string> bookedseats = new List<string>();

       public  string [] [] trackbooked=new string[30][] ;

    }

现在我正在为它分配一些值,例如

a[l].trackbooked[i][j] = pb.Name;

a 是一个对象列表 List<master> a = new List<master>(); a.Add(obj0); a.Add(obj1); a.Add(obj2); a.Add(obj3); a.Add(obj4);

有人可以帮忙吗。谢谢你。

【问题讨论】:

  • pb 是什么?包括你的追踪轨迹。
  • @quantdev 它在 foreach 循环内,所以 pb 指的是图片框
  • 什么是'a'?一群班主任?初始化是否正确?
  • 您有一个锯齿状数组(“数组数组”)而不是多维数组。您永远不会在 sn-p 中实例化内部数组。
  • a[l] 或 pb 可能为空

标签: c# arrays winforms jagged-arrays


【解决方案1】:

您只初始化了多维数组的一维。请参阅 msdn 了解您可以使用的所有方式 initialize a multidimensional array

 public  string [,] trackbooked=new string[30,30] ;

【讨论】:

    【解决方案2】:

    pb.Name.Tostring(); 我冒昧地猜测,无论 pb 是什么,它的 NAME 值都不会作为字符串返回。您应该可以使用上述命令来纠正您的问题。

    【讨论】:

    • ...不会导致NullReferenceException..
    猜你喜欢
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    相关资源
    最近更新 更多