C++学习笔记27:多文件结构

组织结构

一个工程可以划分为多个源文件:

  • 类声明文件(.h 文件)
  • 类实现文件(.cpp 文件)
  • 类的使用文件( main() 所在的 .cpp 文件)

利用工程来组合各个文件。

外部变量

  • 如果一个变量除了在定义它的源文件中可以使用外,还能被其它文件使用,那么就称这个变量是外部变量。
  • 文件作用域中定义的变量,默认情况下都是外部变量,但在其它文件中如果需要使用这一变量,需要用 extern 关键字加以声明。

外部函数

  • 在所有类之外声明的函数(也就是非成员函数),都是具有文件作用域的。
  • 这样的函数都可以在不同的编译单元中被调用,只要在调用之前进行引用性声明(即声明函数原型)即可。也可以在声明函数原型或定义函数时用extern 修饰,其效果与不加修饰的默认状态是一样的。

将变量和函数限制在编译单元内

使用匿名的命名空间:在匿名命名空间中定义的变量和函数,都不会暴露给其它的编译单元。
语法形式

namespace{//匿名的命名空间 大括号内都属于匿名的命名空间
}

标准C++库

标准 C++ 类库是一个极为灵活并可扩展的可重用软件模块的集合。标准 C++ 类与组件在逻辑上分为 6 种类型:

  • 输入 输出类
  • 容器类与抽象数据类型
  • 存储管理类
  • 算法
  • 错误处理
  • 运行环境支持

编译预处理

#include包含指令
#define宏定义指令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值