关于编程语言中的显式\隐式初始化

本文介绍了C#中变量初始化的概念,包括显式初始化与隐式初始化的区别。通过具体实例展示了不同类型的变量如何进行初始化,并解释了自动变量与非自动变量在初始化过程中的不同表现。

声明:个人所写所有博客均为自己在学习中的记录与感想,或为在学习中总结他人学习成果,但因本人才疏学浅,如果大家在阅读过程中发现错误,欢迎大家指正。

更多请见网址http://blog.youkuaiyun.com/angel_94/article/details/50652011,个人原因博客园更新较优快云慢

以前学习C时一直没有注意过显式初始化与隐式初始化这两个概念,最近开始学习C#时,在《C#图解教程》一书中第4.4节中注意到还有显式和隐式字段初始化的概念,这本书后来也多次提到此事。

以下是个人理解

分配空间给变量,赋予初值即为初始化。初始化值必须是编译时可确定的。如果没有初始化语句,字段的值会被编译器设为默认值,默认值由字段的类型决定。

比如:下面这两种初始化即为隐式初始化

int F1; //初始化为0 
string F2; //初始化为null

下面这两种初始化为显式初始化

int F3 = 25; //初始化为25 
string F4 = "abcd"; //初始化为“abcd”

显式初始化即为手工给予初值,否则为隐式初始化,将内容设置为默认值。

自动变量在运行时进入函数的时候,才进行分配空间赋值。非自动变量会自隐式清零,而自动变量是不会自隐式清零的。若没有在定义变量时显式初始化,未赋值前,该变量的内容是不确定值。

转载于:https://www.cnblogs.com/-Angel/p/5251281.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值