I'm getting an "unresolved external symbol "public:__thiscall hijo<int>::hijo<int>(void)" referenced in function_main
Comencé un nuevo proyecto porque estaba teniendo el mismo error en otro proyecto más grande. El error ocurre cuando trato de asignar espacio usando la nueva palabra clave. Si este error es tonto, perdóname porque no he programado nada en los últimos meses.Error del vinculador al usar una clase de plantilla?
/********************file hijo.h******************/
#pragma once
#ifndef hijo_h
#define hijo_h
template <class A>
class hijo
{
public:
hijo(void);
~hijo(void);
};
#endif
/********************file hijo.cpp***************/
#include "hijo.h"
#include <iostream>
using namespace std;
template <class A>
hijo<A>::hijo(void)
{
}
template <class A>
hijo<A>::~hijo(void)
{
}
/*********************at main() function ***************/
#include <iostream>
#include "hijo.h"
int main(){
hijo<int> *h = new hijo<int>; <---- PROBLEM AT THIS LINE
system("pause");
return 0;
}
"pero desafortunadamente está aquí para quedarse" - hasta que obtengamos los módulos. \ * cruza los dedos * – Xeo
FUNCIONA COMO UN ENCANTO, solo tenía que arreglar un poco su solución. en lugar de agregar el código en el archivo .h acabo de incluir el archivo .cpp en la parte inferior del archivo .h. Es el mismo resultado que si ambas partes estuvieran en el mismo archivo. en "hijo.cpp" #ifndef hijo_cpp #define hijo_cpp y en la parte inferior #endif ... gracias u por su respuesta ... – HoNgOuRu
tengo que esperar 8 minutos más para marcar la pregunta como se responde – HoNgOuRu