在实际的项目编程中
.cpp文件中定义的函数分为两种,一种是对外提供接口供外部调用的,一种是特定功能封装成一个函数,供前者调用,它们只在本文件里面调用,一般申明为static。
这时候存在一个问题:
比如,你的function_1假如现在必须调用function_3才能完成任务,那就完蛋了,因为function_3定义在function_1后面,这个时候,最好的方法就是把所有函数的申明放到.hpp中,然后.cpp包含一起申明,相互调用时就不在乎函数的定义先后了。
这个时候
对于那些只在本文件内部被调用的函数,可以在head_inner.hpp中申明,需要提供给外部的函数,可以申明在head.hpp中。
前者.cpp包含自己用
后者.cpp包含且提供给其他人。