elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  template undefined reference : help.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: template undefined reference : help.  (Leído 2,863 veces)
bash

Desconectado Desconectado

Mensajes: 258



Ver Perfil
template undefined reference : help.
« en: 2 Mayo 2011, 05:28 am »

buenas a todos he estado practicando la programacion generica
entonces me surgio mesclarla con punteros  entonces cuando compilo me aparece un error.

veamos :


compiler : gcc
Ide         : code::block
s.o         : windows xp ..
 


codigo:

header.hpp
Código
  1. #include <iostream>
  2. #include <utility>
  3. #include <vector>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. template<class T>
  9. class Array{
  10.    private:
  11.  
  12.    T *ptr_tipo;
  13.    T  tipo;
  14.  
  15.  
  16.    public:
  17.  
  18.    Array(T val, unsigned int siz);
  19.  
  20. };
  21.  
  22.  

def.cpp
Código
  1. #include "header.hpp"
  2.  
  3.  
  4. template<class T>
  5. Array<T>::Array(T val, unsigned int siz){
  6.  
  7.    ptr_tipo = 0L;
  8.    ptr_tipo = new T;
  9. }
  10.  



main.cpp

Código
  1. #include <iostream>
  2. #include "header.hpp"
  3. using namespace std;
  4.  
  5.  
  6.  
  7. int main()
  8. {
  9.  Array<int> arreglo(12, 45);
  10.  
  11.  return 0;
  12.  }
  13.  

entonces cuando compilo me da eso:

obj\Release\main.o:main.cpp|| undefined reference to `Array<int>::Array(int, unsigned int)'|
||=== Build finished: 1 errors, 0 warnings ===|


la verdad me pasa a menudo con cualquier app
les agradeceria ayuda.


GRACIAS.




En línea

gracias por responder mis dudas
satu


Desconectado Desconectado

Mensajes: 301

Siempre aprendiendo


Ver Perfil WWW
Re: template undefined reference : help.
« Respuesta #1 en: 2 Mayo 2011, 11:48 am »

Hola

Cuando se utilizan templates se implementan las funciones en el .h


header.hpp
Código
  1. #include <iostream>
  2. #include <utility>
  3. #include <vector>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. template<class T>
  9. class Array{
  10.    private:
  11.  
  12.    T *ptr_tipo;
  13.    T  tipo;
  14.  
  15.  
  16.    public:
  17.  
  18.    Array(T val, unsigned int siz);
  19.  
  20. };
  21.  
  22.  
  23. template<class T>
  24. Array<T>::Array(T val, unsigned int siz){
  25.  
  26.    ptr_tipo = 0L;
  27.    ptr_tipo = new T;
  28. }
  29.  
  30.  


main.cpp

Código
  1. #include <iostream>
  2. #include "header.hpp"
  3. using namespace std;
  4.  
  5.  
  6.  
  7. int main()
  8. {
  9.  Array<int> arreglo(12, 45);
  10.  
  11.  return 0;
  12.  }
  13.  



Saludos


En línea

Breakbeat como forma de vida
bash

Desconectado Desconectado

Mensajes: 258



Ver Perfil
Re: template undefined reference : help.
« Respuesta #2 en: 2 Mayo 2011, 19:09 pm »

es cierto , luego de escribir me puse en eso y compilo si incluia el otro .cpp

me dio el mismo error pero con eso que me dijiste ya resolvi
gracias.. de veras que si.
En línea

gracias por responder mis dudas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
undefined reference to `SDL_GetPlatform' !!!!
Programación C/C++
<[(x)]> 6 3,862 Último mensaje 9 Julio 2010, 04:46 am
por <[(x)]>
Gas con sintaxis intel: Undefined reference to...
ASM
farresito 1 5,246 Último mensaje 11 Marzo 2011, 23:15 pm
por Eternal Idol
NASM Linux printf - scanf "undefined reference"
ASM
Leyer 5 8,726 Último mensaje 7 Enero 2012, 20:32 pm
por Eternal Idol
CodeBlocks "undefined reference to gotoxy"
Programación C/C++
van13 1 4,746 Último mensaje 27 Octubre 2012, 02:42 am
por BatchianoISpyxolo
[Linker error] undefined reference to `i'
ASM
Boss99 1 3,889 Último mensaje 23 Noviembre 2012, 01:17 am
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines