关于C#结构体 你需要知道的

2020-06-04 18:00:37王旭

  结构体没有析构函数,结构体中的方法不能用 virtual 和 abstract 修饰,但是可以用 override 修饰,用来重写父类的方法

  结构体不能显示给出默认构造函数(无参数的构造),无论有没有自定义构造,默认构造都隐式存在,而类中有自定义构造函数时,默认构造会被隐藏,要想调用默认构造,必须显示给出默认构造

  结构体的自定义构造函数必须初始化所有的实例字段和没有初始化的非静态属性,类没有限制

结构与类的选择

  堆栈的空间有限,对于大量的逻辑的对象,创建类要比创建结构好一些

  结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。在此情况下,结构的成本较低

  在表现抽象和多级别的对象层次时,类是最好的选择

  大多数情况下该类型只是一些数据时,结构时最佳的选择体的使用

以上就是关于C#结构体 你需要知道的的详细内容,更多关于c#结构体的资料请关注易采站长站其它相关文章!