如果不使用new关键字初始化结构,我无法为结构内部的属性赋值。如果我试图给属性赋值,我会得到下面的错误。但是我可以为公共变量赋值,或者在结构内部调用一个方法,而不需要一个新关键字。我在试着找出这种行为的原因。请帮帮我。
错误:使用未赋值的局部变量“pd2”
struct P
{
public int i;
public int j;
public string e;
public string Name { get; set; }
public void Showi()
{
Console.WriteLine(string.Format("Display i:{0}",this.i));
}
}
static void Main(string[] args)
{
P pd2;
pd2.i = 1;
pd2.j = 1;
pd2.e = "test";
pd2.Name = "abc"; //This is a property, shows error here
}
在不使用新关键字的情况下调用结构内部的方法
只有在确保每个字段都已初始化(这导致整个