分别编译
要点与引申 :
- 将常量的定义放在同一个头文件中
- 将类型的定义写在头文件中,最好不要把多个类型定义写在同一个头文件中
- 禁止将全局变量的定义写进头文件中
- 每一个源程序文件有效语句所在行最好控制在 50 - 500 行之间
- 程序的实际执行在调用 main 之前就开始进行了,在 main 结束以后还可能善后处理代码
程序变量写在不同的源文件中需要注意:
- 在不同的编译单元出现的同一全局名字其定义和声明时具有一致的类型
- 定义函数的时候要使用 inline 的内联函数的定义方式,一般不会采用普通函数的定义方式。
- 在不同编译单元出现的同一全局变量或函数,有且仅在一个编译单元中有定义,其他地方都是 “extern” 声明
main 函数
- 每个程序有且仅有一个main函数
- 在执行main函数之前,必须对所有的非局部变量进行实例化 (初始化)。
- 在同一个编译单元中,非局部变量实例化的顺序可以由定义顺序确定,在不同的的编译单元之间,实例化顺序无法确定。