Чтобы использовать функцию из некоторого cpp файла (скажем, a.cpp
), соответствующий заголовочный файл (a.h
здесь) должен содержать подпись этой функции. То есть его имя, тип возвращаемого значения и список входных параметров без фактического тела. Затем, если в другом cpp файле b.cpp
указано #include a.h
, он может свободно использовать все функции, перечисленные в этом заголовочном файле.
$ cat a.cpp
int add(unsigned int x,unsigned int y){return x+y;}
$ cat a.h
int add(unsigned int x,unsigned int y);
$ cat b.cpp
#include "a.h"
int mul(unsigned int p,unsigned int q)
{
if (p=0) return 0;
else return add(mul(p-1,q),q);
}