3.1 Introduction
C++程序中有许多独立开发的组件:函数、自定义类型、类层级、模板等。重要的一点是区分声明和实现,尤其是函数
不论是先声明再实现,还是类内声明,类外实现都是一样的原理,但是定义只能出现一次
3.2 Separate Compilation
使用头文件的分开编译过程:
同时书中提到头文件这样的代码组织方式已经有四五十年了,有以上的编译问题,因此C++20使用模块组织代码库,不过std这个模块没有在C++20里实现,模块化组织代码方式如下:
3.3 Namespaces
命名空间也是组织代码、避免名字冲突的一种方式
namespace My_code {
class complex {
// ...
};
complex sqrt(complex);
// ...
int main();
}
int My_code::main() {
complex z{