一、定义方式
定义结构:
struct PointStruct //默认的访问权限是 public { public int X { get; set; } public int Y { get; set; } public PointClass(int x, int y) { X = x; Y = y; } }
定义类:
class PointClass //默认的访问权限是 private { public int X { get; set; } public int Y { get; set; } public PointClass(int x, int y) { } }
首先,声明所使用的关键字: 使用 struct 声明结构,使用 class 声明类。
其次,默认的访问权限: 结构的默认访问权限是 public,而类的默认访问权限是 private。
然后,声明的变量的初始值: 在类里面声明变量可以给初始值,但在结构体中声明的变量是不可以赋初始值的。
最后,构造函数: 结构体不能显式定义无参数的构造函数,并且结构体中的构造函数中必须给该结构体的所有字段赋值;但是类的构造函数中可以不给字段赋值。
二、存储及赋值
结构是值类型,存储在堆栈空间内,其对象的字段值是直接存储在这个变量中的。(堆栈的空间有限,但处理效率要比堆的执行效率高)
原文地址:https://www.cnblogs.com/zhangchaoran/p/10336937.html
时间: 2024-10-16 13:44:39