C++ Primer知识系列四:内存模型和名称空间

C++ Primer知识系列四:内存模型和名称空间

1、头文件

头文件包含:函数原型;使用#define或const定义的符号常量;结构声明;类声明;模板声明;内联函数

//避免多次包含同意头文件
#ifndef COORDIN_H_EXAM
#define COORDIN_H_EXAM
...
#endif

2、存储持续性、作用域和链接性

链接性:名称如何在不同单元间共享。

  1. 自动存储持续性:函数内定义的变量(包括参数);作用域:局部代码块;无链接性(栈)
  2. 静态存储持续性:函数外定义的变量和static关键字定义的变量
  3. 线程存储持续性(C++11):关键字thread local声明(生命周期和线程一样长)
  4. 动态存储持续性:关键字new声明(堆)

静态存储持续性变量的3种链接性:

  1. 外部链接性(可在其他文件中访问):代码块外部声明(无static)
  2. 内部链接性(只能在当前文件中访问):代码块外部用static声明
  3. 无链接性(只能在当前代码块中访问):代码块内用static声明

3、名称空间

namespace exam{
    //声明变量,函数原型,结构类声明
}//不能位于代码块中
using namespace exam;
using exam::...;
//可嵌套
namespace t1{
    using t2;
    ...
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值