1 struct MyPoint 2 { 3 //public int a = 10; // 结构体不能为字段初始化,但是这里可以初始化静态字段 4 private int y; 5 //结构体是不能 定义无参的构造函数 6 public MyPoint(int x) 7 { 8 //在任何构造函数调用的时候,必须初始化所有的参数 9 y = 10; 10 } 11 }
1 /// <summary> 2 /// 一种实现方式,初始化所有字段 3 /// </summary> 4 /// <param name="s"></param> 5 public MyPoint(string s) 6 { 7 //一种实现方式,初始化所有字段 8 this = new MyPoint();//这里会初始化 字段y=0 9 }
注意:在值类型的构造器中,this 代表值类型本身的一个实例,用new 创建的值类型的实例可以赋值给 this ,但是在引用类型的构造器中,this 是只读的,不能为其赋值