Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 必须完全指定构造函数 公共结构S_矩阵 { 公共整数大小C,大小R; 公共列表条目; 公共S_矩阵(int c,int r) { 这个尺寸C=C; 这个尺寸是R=R; } }_C#_List_Struct - Fatal编程技术网

C# 必须完全指定构造函数 公共结构S_矩阵 { 公共整数大小C,大小R; 公共列表条目; 公共S_矩阵(int c,int r) { 这个尺寸C=C; 这个尺寸是R=R; } }

C# 必须完全指定构造函数 公共结构S_矩阵 { 公共整数大小C,大小R; 公共列表条目; 公共S_矩阵(int c,int r) { 这个尺寸C=C; 这个尺寸是R=R; } },c#,list,struct,C#,List,Struct,我不知道怎么修理它。当我向列表中添加默认值时,它解决了问题,但我不能简单地在struct中实例化一个值。您的struct字段条目\u R没有初始化。在结构中,每个成员都必须在构造函数中初始化。如果您不希望出现这种行为,您可能希望使用一个简单的类 public struct S_Matrix { public int size_C,size_R; public List<entries_R> entry_R; public S_Matrix(int c, in

我不知道怎么修理它。当我向列表中添加默认值时,它解决了问题,但我不能简单地在struct中实例化一个值。

您的struct字段
条目\u R
没有初始化。在结构中,每个成员都必须在构造函数中初始化。如果您不希望出现这种行为,您可能希望使用一个简单的类

public struct S_Matrix
{
    public int size_C,size_R;
    public List<entries_R> entry_R;

    public S_Matrix(int c, int r)
    {
        this.size_C = c;
        this.size_R = r;
    }
}
公共结构S_矩阵
{
公共整数大小C,大小R;
公共列表条目;
公共S_矩阵(整数c、整数r、列表en)
{
这个尺寸C=C;
这个尺寸是R=R;
此项输入=en;
//如果不需要构造函数参数:
//this.entry_R=null;
//或:
//this.entry_R=新列表();
}
}
在大多数情况下,类是您想要的。只有知道自己在做什么时才应该使用结构

 public struct S_Matrix
 {
     public int size_C, size_R;
     public List<entries_R> entry_R;

     public S_Matrix(int c, int r, List<entries_R> en)
     {
         this.size_C = c;
         this.size_R = r;
         this.entry_R = en;
         // If you don't want a constructor parameter:
         // this.entry_R = null;
         // or:
         // this.entry_R = new List<entries_R>();
     }
 }
公共类S_矩阵
{
公共整数大小C,大小R;
公共列表条目;
公共S_矩阵(int c,int r)
{
这个尺寸C=C;
这个尺寸是R=R;
//条目\u R一直处于未初始化状态
}
}

您不应该使用
结构
公共S_矩阵(int c,int r):this(){}
 public class S_Matrix
 {
     public int size_C, size_R;
     public List<entries_R> entry_R;

     public S_Matrix(int c, int r)
     {
         this.size_C = c;
         this.size_R = r;
         // entry_R keeps being uninitialised
     }
 }