1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
class Program { static void Main( string [] args) { Point p; Console.WriteLine(p); Point p1 = new Point(); Console.WriteLine(p1); Console.ReadKey(); } } //定义结构 struct Point { ////定义时赋初始值,编译器会报错 //private int x; } |
运行时打印结果如下:
但是去掉结构中字段前的注释后,
//定义结构
struct Point
{
////定义时赋初始值,编译器会报错
private int x;
}
运行代码就会报错
我知道要是在结构中定义字段,运行时,会调用默认的构造函数为字段赋初始值
注释前和注释后,到底有什么区别,第一种为什么不报错,注释掉字段后为什么有报错了呢?
结构体,字段的值必须通过构造函数进行赋值.
结构需要在构造函数中对变量初始化