Hola, simplemente debes indicar mediante comillas en una sentencia include, el arhivo de cabecera de funciones externas que quieras agregar:
por ejemplo en tu main.cpp
#include "cifrados.h"
int main()
{
....
caesar(x);
....
return 0;
}
en tu biblioteca tendrìas las declaraciones de dichas funciones, un arhivo metodos_cifrado.h con algo como
#ifndef CIFRADOS_H
#define CIFRADOS_H
.....
void caesar(*char);
void vigenere (*char);
.....
#endif
mientras que tus declaraciones las haces en metodos_cifrados.cpp
#include "cifrados.h"
void caesar(*char)
{
......
}
void vigenere(*char)
{
......
}
etc...
a grosso modo... Serìa el diseño de lo que se denomina una biblioteca estàtica.
Puedes ubicarla en una carpeta para que quede màs organizado... recuerda entonces poner correctamente el path en el include.
Creas la biblioteca en sí del siguiente modo..
gcc -static -c cifrados.cpp -o cifrados.o
ar -rcs libcifrados.a cifrados.o
(de esta manera puede accederse luego como si fuera una del sistema)
La enlazas luego por ejemplo con
g++ -L. -Icifrado.h main.cpp -o cifrando_texto
Bueno todo esto puede automatizarse con makefile, o bien hacerlo desde una IDE... pero bàsicamente esta es la idea. Saludos
(edito) modifiqué los nombres para evitar confusión en la biblioteca, así como agregué la parte de la creación de la biblioteca estática propiamente dicha, antes del enlace.