Yo hago así y me funciona, pero en codeblocks:
Código C++:
Ver original// cabecera.h
#ifndef CABECERA.H
#define CABECERA.H
class MiClase {
//mis metodos y atributos
};
#endif // CABECERA.H
Código C++:
Ver original// cabecera.cpp
//incluyo el archivo de cabecera.h aqui:
#include "cabecera.h"
// aqui la implementacion de los metodos de la clase "MiCLase"
Código C++:
Ver original// main.cpp
#include <iostream>
using namespace std;
//incluyo el archivo de cabecera.h y cabecera.cpp aqui, debajo de los demas includes para que haga uso de los mismos.
// Todos los .h
#include "cabecera.h" // Este con su proteccion contra doble include :)
// Todos los .cpp (implementaciones)
#include "cabecera.cpp"
Solo compilo el main.cpp, si marco que se compile todo no me hace falta incluir el cabecera.cpp ya que me tira error.
De esta forma puedo incluir cabecera.h y cabecera.cpp en un nuevo proyecto.
Siempre compilando el principal.
Seguro hay otras formas de hacerlo pero esta me gusta por que puedo pinchar directo en el main.cpp y compilarlo sin el archivo de proyecto, me funciona bien en ambos casos.
si estan en diferentes directorio como dices pon la ruta completa #include "c:\....\.....\cabecera.h"
Lo mismo para cabecera.cpp
O en las opciones de tu ide, configure las rutas relativas.
me gusta tener todo dentro de una carpeta bajo disco c: ejemplo.
c:\main
Dentro pongo los archivos de proyecto los .h y los .cpp
Configuro que la salida como los obj y los exe en otra carpeta como c:\salida
y ahi tengo 2 mas.
c:\salida\debug y c:\salida\release
Segun use va parar dentro de uno o dentro de otra.
En c:\main una sola carpeta como recursos por si pongo una imagen o otros tipos de archivo que les voy a cargar.
Así facilito mucho el trabajo y recordar las rutas.
Pero eso es en codeblocks, cada ide tiene sus diferencias.