C/C++知识点之关键字static在标准C/C++的作用
小标 2018-12-26 来源 : 阅读 1172 评论 0

摘要:本文主要向大家介绍了 C/C++知识点之关键字static在标准C/C++的作用,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。

本文主要向大家介绍了 C/C++知识点之关键字static在标准C/C++的作用,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。

static总结:根据作用域,存储域,生命周期3点来说
  static含义: 是C/C++中很常用的修饰符,它被用来控制变量的存储方式和可见性。
  (1)标准C语言中,static的最主要功能是隐藏,其次因为static变量存放在静态存储区,所以它具备持久性和默认值0。
    1、隐藏指的是作用域的区别,如果此函数或者变量被static关键字修饰
        a、修饰的是局部变量,那么只能在函数内可见(可使用)。
        b、修饰的是全局变量或函数,那么只能在当前文件下可见。其他的文件即使用extern声明也不能使用
    2、存储域
        a、static函数在内存中只有一份,普通函数在每次调用中都有一份拷贝。
        b、如果变量有初始化,那么会存储在全局数据区。未被初始化,会被存储在静态数据区,系统会自动赋予0值
    3、生命周期
        当程序开始时初始化,也是唯一一次,此变量创建直到程序结束
  (2)标准C++语言中
    静态变量:
        (1)静态数据成员可以实现多个对象之间的数据共享,它是类的所有对象的共享成员,它在内存中只占一份空间,如果改变它的值,则各对象中这个数据成员的值都被改变。         (2)静态数据成员是在程序开始运行时被分配空间,到程序结束之后才释放,只要类中指定了静态数据成员,即使不定义对象,也会为静态数据成员分配空间。                        (3)静态数据成员可以被初始化,但是只能在类体外进行初始化,若未对静态数据成员赋初值,则编译器会自动为其初始化为0                        (4)静态数据成员既可以通过对象名引用,也可以通过类名引用。
     静态成员: 
      (1)静态成员函数和静态数据成员一样,他们都属于类的静态成员,而不是对象成员。       (2)非静态成员函数有this指针,而静态成员函数没有this指针。       (3)静态成员函数主要用来方位静态数据成员而不能访问非静态成员。

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C/C+频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved