En el compilador g++ como debía poner la opción -I para que me encuentre los ficheros h?? era algo como -I ,
es que trato de compilar unos ficheros y no me los encuentra, estoy porbando con
g++ -o prueba templ.cpp prueba.cpp -I .* pero no es asi
este es templ.h
#ifndef NUMERO
#define NUMERO
#include <iostream>
using namespace std;
template<typename T>
class Numero{
public:
Numero(T n);
T& getN();
private:
T n_;
};
#endif
este es templ.cpp
#include "templ.h"
template<typename T>
Numero<T>::Numero(T n):n_(n){};
template<typename T>
T& Numero<T>::getN(){ return n_;}
y este es prueba.cpp
#include "templ.h"
int main(){
Numero<int> n(5);
cout<<n.getN()<<endl;
}
Para que compile con esta orden g++ -o prueba templ.cpp prueba.cpp en prueba.cpp tengo que incluir el templ.cpp no el templ.h

pero si sincluyo el templ.h en prueba.cpp me dice ....referencia sin definir en main()
este es el error
/tmp/ccd5stS2.o: En la función `main':
prueba.cpp:(.text+0x15): referencia a `Numero<int>::Numero(int)' sin definir
prueba.cpp:(.text+0x21): referencia a `Numero<int>::getN()' sin definir
collect2: error: ld returned 1 exit status