C# 结构
结构中设置私有字段,然后用属性进行封装,在外通过属性进行访问,报错说 使用了未赋值的局部变量
代码如下
结构体代码
namespace T2TEST
{
public struct Test02
{
//私有字段_a
private int _a;
//私有字段_a的属性A
public int A
{
get { return _a; }
set { _a = value; }
}
//私有字段_b
private double _b;
//私有字段_b的属性B
public double B
{
get { return _b; }
set { _b = value; }
}
//输出_a,_b
public void Show()
{
Console.WriteLine("_a={0},_b={1}",_a,_b);
}
}
}
调用处代码
namespace T2TEST
{
class Program
{
static void Main(string[] args)
{
//创建结构体对象
Test02 te;
//通过属性赋值
te.A = 12;
te.B = 13.5;
te.Show();
}
}
}
新手求解答 C# Structure 类 报错
[解决办法]
//创建结构体对象
Test02 te=new Test02();这样子
结构类型的属性不能直接赋值:
我觉得结构如果声明时不用 new 实例化,在给公共字段赋值时就自动实例化了。
属性等同于方法,直接调用方法并不会实例化它,而如果先给字段赋值,再调用方法就可以的了。