【2017年整理】C#类变量初始化和局部变量初始化

上传人:豆浆 文档编号:987657 上传时间:2017-05-24 格式:DOCX 页数:2 大小:14.17KB
返回 下载 相关 举报
【2017年整理】C#类变量初始化和局部变量初始化_第1页
第1页 / 共2页
【2017年整理】C#类变量初始化和局部变量初始化_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《【2017年整理】C#类变量初始化和局部变量初始化》由会员分享,可在线阅读,更多相关《【2017年整理】C#类变量初始化和局部变量初始化(2页珍藏版)》请在金锄头文库上搜索。

1、注意:在 C 和 C+中,未经初始化的变量是不能使用的。在 C#中,系统将为每个未经初始化的变量提供一个默认值。这虽然一定程度上保证了程序的安全性,但对本应初始化为某个特殊值的变量忘记了初始化,也常常会导致程序的执行误入岐途,所以对变量进行显式的初始化,还是最安全的方法。对于静态变量、非静态的对象变量和数组变量,这些变量自动初始化为本身的默认值。对于所有引用类型的变量,默认值为 null。所有值类型的变量的默认值见下表所示:表 12-1 部分类型的域初始化的值变量类型 默认值sbyte,byte,short,ushort,int,uint,long,ulong 0char x0000float

2、 0.0fdouble 0.0ddecimal 0.0mbool falseenum 0对于 struct 类型的变量,默认的初始化将对构成该结构的每一个值类型初始化为上表中的默认值,对构成其的每一个引用类型初始化为 null。如果在类中,没有显式地对域进行初始化,系统将赋予其一个默认值。域的默认初始化分为两种情况:对于静态域,类在装载时对其进行初始化;对于非静态域,在类的实例创建时进行初始化。在默认的初始化之前,域的值是不可预测的。比如,下面的代码是合法的:class Teststatic int a=b+1;static int b=a+1;实际上等价于:a=1,b=2而下面的代码则是非法的:class Aint x=1;int y=x+1;因为非静态变量 x 在类 A 实例化以前并没有初始化,代码 y=x+1 无法得到正确的 x 的值。局部变量必须初始化, 否则编译会出现问题。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号