C#基础复习

结构

目录

结构

结构是值类型 

 对结构赋值

 构造函数与析构函数

实例构造函数:

 静态构造函数

 字段初始化语句是不允许的

 结构是密封的

 装箱和拆箱

结构体作为返回值和参数


类是引用类型而结构是值类型

结构是隐式密封的,这意味着它们不能被派生

结构是值类型 

 和所有值类型不一样,结构类型变量含有自己的数据。因此:

    结构类型的变量不能为  null

    两个结构变量不能引用同一个对象

SimPle 是结构体   CSimPle  是类

 对结构赋值

把一个结构赋值给两一个结构,就将一个结构的值赋值给另一个结构。这和赋值类变量不一样,复制类变量时只复制引用

 构造函数与析构函数

结构可以有实例构造函数和静态构造函数,但不允许有析构函数

实例构造函数:

语言隐式地为每个结构提供一个无参数地构造函数。这个构造函数把结构地每个从成员设置为该类型地默认值。值成员设置他们地默认值,引用成员设置成 null 

预定义地无参构造函数对每个结构都存在,而且不能删除或重定义。但是可以创建另外的构造函数,只要有参数。而类在没有其他构造函数的时候才会提供隐式的无参构造函数

调用一个构造函数,包括隐式的无参构造函数,要使用 new 运算符。注意,即使不从堆中分配内存也要使用 new 运算符

 

 静态构造函数

与类相似,结构的静态构造函数创建并初始化静态数据成员,而且不能饮用实例成员。

 

 字段初始化语句是不允许的

在结构体中字段初始化语句是不允许的

 结构是密封的

结构总是隐式密封的,因此,不能从它们派生其他结构

 装箱和拆箱

如同其他值类型数据,如果想将一个结构实例作为引用类型对象,必须创建装箱(boxing)的副本。装箱的过程就是制作值类型变量的引用类型副本。

结构体作为返回值和参数

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值