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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  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 3,113 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 4,233 Último mensaje 9 Julio 2010, 04:46 am
por <[(x)]>
Gas con sintaxis intel: Undefined reference to...
ASM
farresito 1 5,458 Último mensaje 11 Marzo 2011, 23:15 pm
por Eternal Idol
NASM Linux printf - scanf "undefined reference"
ASM
Leyer 5 9,105 Último mensaje 7 Enero 2012, 20:32 pm
por Eternal Idol
CodeBlocks "undefined reference to gotoxy"
Programación C/C++
van13 1 5,017 Último mensaje 27 Octubre 2012, 02:42 am
por BatchianoISpyxolo
[Linker error] undefined reference to `i'
ASM
Boss99 1 4,125 Ú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