C++资料-局部对象-22

局部对象:

在C++中名字有作用域,对象有生命周期

1、 名字的作用域是程序文本的一部分,名字在其中可见

2、 对象的生命周期是程序执行过程中该对象存在的一段时间

3、 函数体是一个语句块,块构成一个新的作用域(C++程序中作用域是用{}分开的)

4、 在块中定义的形参和函数体内部定义的变量统称为局部变量,他们对函数而言是局部的,仅在函数的作用域内可见

5、 同时局部变量还会隐藏在外层同名的其它变量

6、 在函数体外声明的定义的变量存在于整个程序的执行过程,此类对象在程序启动时被创建直到程序结束才会被销毁

7、 对于普通的局部对象,当函数的控制路径经过变量定义的语句时创建该对象,当达到定义所在的块尾时销毁它,它在存在于函数执行期间(也被称为自动对象)

8、 形参也是一种自动对象,当函数开始时为形参申请存储空间,当函数结束被销毁

例子:

int i=5;

int fen(int h=10)

{
	  //声明了一个在函数内的局部变量
	int i=0;
	
	qDebug()<<i;			//会输出0
}
	
qDebug()<<i;				//会输出5,因为已经出了函数里面i的作用域,所有这里看见的是外面i的值5

qDebug()<<h;				//提示程序错误,因为形参也是局部对象	

博主QQ交流群:778212048

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值