2019独角兽企业重金招聘Python工程师标准>>>

C/C++中static的含义

1. 对象在静态存储区上创建

2. 对一个特定的编译单位来说是局部的,表示其可见性。

静态对象的析构

1. 避免在析构函数中使用exit(),可以使用abort(), 因为会循环调用析构函数

2. 定义在全局scope的对象会在main执行之前初始化,main函数结束析构。

控制连接

即连接的可见性。分为外部连接(external linkage)和内部连接(internal linkage).

外部连接:

1. 全局变量

2. 普通函数

3. Extern变量

内部连接:

1. 明确为static的对象

2. inline函数

3. 常量

连接只引用连接/装载期间有地址的成员,因此类声明和局部变量不连接。(类声明何时连接?)

冲突问题:

何时static表明存储区,何时表明可见性?

1. 局部变量static不会改变其可见性,只改变其存储区域(栈=>静态存储区)

2. 局部变量使用extern表明改变量已经在别处定义

3. 全局成员使用static改变其可见性,如普通函数使用static成为文件可见的成员,即文件静态。

静态成员的定义必须在外部(不管是否是public),且只能定义一次。

局部类(function内定义的类)无法定义static成员。

转载于:https://my.oschina.net/edwardpku/blog/109483

Thinking in C++ Notes 名字控制相关推荐

  1. Java 控制反转和依赖注入模式【翻译】【整理】

    Inversion of Control Containers and the Dependency Injection pattern --Martin Fowler 本文内容 Component ...

  2. 使用ESP8266接入“天猫精灵”控制七彩灯(WS2812)的颜色/亮度-开源

    目录 `演示视频` 1.准备工作 1.1 `原理` 1.2 `使用的硬件以及硬件连接图` 1.3 `开发环境准备` `Arduino开发环境` `安装ESP8266的扩展` `安装blinker Ar ...

  3. 技术 | Web前端开发(4)持续更新

    人死了,就变成一个星星,给走夜道的人照个亮儿 CSS: css的三种引入方式: 代码 以上就是css的三种引入方式,分别是: 1.行间样式: 在标签里写入:style="" 2.页 ...

  4. IoC容器和Dependency Injection模式

    注:本文转自http://insights.thoughtworkers.org/injection/,请尊重译者的劳动成果,转载需注明出处. 2017年3月3日 by Martin Fowler L ...

  5. service 层注入不同的数据源_.NET 理论基础+实战控制台程序实现AutoFac注入

    (给DotNet加星标,提升.Net技能) 转自:在7楼 cnblogs.com/RayWang/p/11128554.html 简介 该系列共5篇文章,旨在以实战模式,在.NET下的 控制台程序 F ...

  6. C/C++学习之路: C++对C的扩展

    C/C++学习之路: C++对C的扩展 1 ::作用域运算符 通常情况下,如果有两个同名变量,一个是全局变量,另一个是局部变量,那么局部变量在其作用域内具有较高的优先权,它将屏蔽全局变量. int a ...

  7. 【半小时大话.net依赖注入】(一)理论基础+实战控制台程序实现AutoFac注入

    第一章|理论基础+实战控制台程序实现AutoFac注入 第二章|AutoFac的常见使用套路 第三章|实战Asp.Net Framework Web程序实现AutoFac注入 第四章|实战Asp.Ne ...

  8. IoC 容器和 Dependency Injection 模式[转]

    转自:插图版<IoC 容器和Dependency Injection 模式> 原文地址:Inversion of Control Containers and the Dependency ...

  9. 以stc15w408as为核心,基于gsm的红外报警技术报告

    基于gsm的红外感应报警 摘要:本设计以stc15w408as单片机为核心,实现有物体经过特定区域,手机上将会收到报警短信和电话.歹徒经过感应模块上的红外发射管发射范围,红外信号将会被弹回且被模块上的 ...

最新文章

  1. Android技术应用实验指导书,Android应用开发实验指导书
  2. 实战SSM_O2O商铺_47【Redis缓存】清除缓存接口的开发
  3. 用Python和OpenCV提取颜色直方图特征
  4. Python解决数独
  5. python Django ORM ,用filter方法表示“不等于”的方法
  6. 输入一个字符串,删除汉字字符或者西文字符(C语言)
  7. 清华2019最新AI发展报告出炉!400页干货,13大领域一文看懂
  8. 1微秒等于多少皮秒_秒的换算:皮秒、纳秒、微秒、毫秒
  9. 解决jupyter notebook :No module named ‘tensorflow‘ 及python.exe无法找到入口问题及500 : Internal Server Error
  10. 移动端/嵌入式-CV模型-2018:MobelNets-v2【Inverted Residuals(中间胖两头瘦)、Linear Bottlenecks(每个倒残差的最后一个卷积层使用线性激活函数)】
  11. 小米android隐藏游戏,MIUI8小米手机开启隐藏选项
  12. 搭建easy-mock数据模拟服务器
  13. linux--多目录下的MakeFile文件(嵌套Makefile)编写
  14. 各种肤质补水六大误区 - 健康程序员,至尚生活!
  15. loj 573 单枪匹马
  16. PHP截取视频第一帧
  17. 【成神之路】多线程并发相关面试题
  18. React学习的小总结
  19. 证件照怎么自己P图?证件照拍照攻略 记得收藏
  20. WPF 性能优化-高刷新绘图

热门文章

  1. 100%国产的AI操作系统,现在开源了!还有个AI版的App Store
  2. 这家刚拿了1亿美元的基金会,要证明“21世纪是生物的世纪”
  3. 上海名校CS专业第一本科生:我5天里打工3天,丝毫不影响GPA,可见「教学」有多荒谬...
  4. AI新海诚就是在下,不信来玩
  5. 华为VC首次出手:投资2家半导体公司,带火5G建材“碳化硅”
  6. springboot静态资源访问
  7. ie中placeholder字体颜色兼容问题
  8. Audio: 如果你愿意一层一层剥开我的心
  9. node js npm 和 cnpm的使用
  10. 华为手机 开启LOGCAT