首页 > 编程语言 > 详细

C++——局部变量、全局变量、静态变量与动态对象的性质(转载)

时间:2019-09-27 01:31:04      阅读:74      评论:0      收藏:0      [点我收藏+]

 

 原文:

https://blog.csdn.net/u013921430/article/details/79279114

 概述

技术分享图片

 技术分享图片

局部变量

       在一个函数内部定义的变量(包括函数形参),它只在本函数范围内有效,也就是说只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的,这种类型的变量就称为“局部变量”。

       局部变量存储在栈内存,在函数结束后自动销毁。

全局变量

       在函数体外定义的变量,可以为本源文件中其它函数所公用,有效范围为从定义变量的位置开始到本源文件结束,这种类型的变量就称为“全局变量”。全局变量存储在静态存储区域(静态内存)

       全局变量可以被同一工程项目中其他文件用extern声明后调用,对其每次进行修改都会被保存。

静态变量

   静态全局变量

       静态全局变量就是在原先的全局变量前面加上了static进行修饰。静态全局变量依然存储在静态存储区。跟全局变量最大的不同在于,静态全局变量不能被其他源文件使用,只能被本源文件使用,对其每次进行修改都会被保存。

   静态局部变量

       静态局部变量就是在原先的局部变量前面加上了static进行修饰。静态局部变量是静态变量因此存储在静态存储区内,等到整个程序结束才会被销毁。但是它的作用域依然在函数体内部。但是自从静态局部变量被定义后,每次对其进行修改都会被保存下来。

动态对象

      动态对象是程序运行时分配的对象,例如使用new和malloc分配的对象,这部分对象的生存期由程序来控制,也就是说,动态对象需要我们手动的进行销毁(使用delete和free进行销毁)。动态对象存储在堆区。

 

C++——局部变量、全局变量、静态变量与动态对象的性质(转载)

原文:https://www.cnblogs.com/east1203/p/11595184.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!