为什么应该使用模块(Module)替代头文件(Header)?众所周知,C程序在编译时一般会预处理头文件:常规解决办法如下:但结果依然不够理想,比较一下代码与程序大小你会发现:另外,头文件形式的可扩展性天生不足。假设有n个源文件,每个源文件引用了m个头文件,那么构建过程的开销会是m×n。这在C++中表现得尤为糟糕。所以预说处理头文件是一个非常糟糕的解决方案。C家族的模块系统模块是什么?使用“import”导入已命名的模块:import会在源文件中忽略预处理状态,并且选择性导入,所以弹性(resilience)非常好。使用“import”会导入什么?引入模块的目标在于:要编写一