当前位置: 代码迷 >> 综合 >> 内存管理(8)——结构体 Struct (面试题)
  详细解决方案

内存管理(8)——结构体 Struct (面试题)

热度:35   发布时间:2023-10-01 21:43:18.0

1、面试题1:结构体和类的区别。结构体是值类型,而类是引用类型

2、面试题2:这里的输出结果是什么?

            MyPoint p1 = new MyPoint();MyPoint p2 = p1;//结构体是值类型,拷贝一份Console.WriteLine(object.ReferenceEquals(p1, p2));//falsep1.X = 50;//面试题2:这里的输出结果是什么Console.WriteLine(p2.X); //输出0。分析:p2.X有值时输出其值,没值时默认输出0,这里的p2.X没有值,所以输出默认值0。

3、类型:枚举 enum、委托 delegate、class、结构体 Struct 等。平行的,所以声明的时候一般都是跟class平行,或者单独建个文件。

4、结构体非常类似于类,但是值类型(拷贝传递),不能被继承(常考)

5、输出结果是什么?

 struct MyPoint{public int X { get; set; }public int Y { get; set; }}MyPoint m1 = new MyPoint();m1.X = 10;m1.Y = 20;MyPoint m2 = m1;m2.X = 100;Console.WriteLine(m1.X);  //输出10

6、Int32、DateTime等都是结构体结构体从ValueType继承,值类型。ValueType 值类型。

  相关解决方案