C# struct 结构体
参考: https://blog.csdn.net/zeroflamy/article/details/52081462 https://www.w3cschool.cn/csharp/csharp-struct.html 1、C# 结构的特点 1. C#中struct结构体是一个特殊的存在,值类型、栈内拷贝(值类型栈内拷贝决定了struct许多使用特点类似int)。 2. C# 中的结构与传统的 C++ 中的结构不同。C# 中的结构有以下特点: (1)结构可带有方法、字段、索引、属性、运算符方法和事件。 (2)结构可定义构造函数,不能定义析构函数。但不能定义默认构造函数。默认构造函数是自动定义的,且不可改变。 (3)与类不同,结构不能继承其他的结构或类。也不能作为其他结构或类的基础结构。 (4)结构可实现一个或多个接口。 (5)结构成员不能指定为 abstract、virtual 或 protected,这三个关键词都与继承有关,结构不能继承。 (6)当使用 new 创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 new 即可被实例化。 如果不使用 new,只有在所有的字段都被初始化之后,字段才被赋值,对象才被使用。(栈内分配内存,也就不需要使用new在堆上分配内存)。 2、类和结构的区别 (1)类是引用类型,结构是值类型。 (2)结构不支持继承。