| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
koes Lt


Registrado: 19 Jul 2003Mensajes: 77Ubicación: A Laracha (A Coruña)
|
Publicado: Mie 28 Ene, 2004 6:52 pm Asunto: Templates |
|
|
He creado dos templates que quiero utilizar en varias clases. Cual es la mejor forma para no tener que incluir el codigo en cada clase?¿ Se podria poner el codigo en un fichero .h e incluir con la directiva #include.
Gracias. |
|
| Volver arriba |
|
 |
masBecas Lt

Registrado: 23 Oct 2003Mensajes: 98Ubicación: La Laguna, Tenerife
|
Publicado: Jue 29 Ene, 2004 1:21 pm Asunto: |
|
|
En principio, el mecanismo para incluir los templates es el mismo que para cualquier clase "normal". Lo habitual es declarar la clase en un .h y luego incluir este fichero donde quieras utilizarlo.
Te pongo un ejemplo tonto para explicarme mejor:
Supongamos que tienes tu template en el fichero paquito.h:
| Código: |
/* Primero q nada ponemos el típico truquito para que sólo nos incluya una vez el .h y el linker no dé errores de declaraciones repetidas */
#ifndef __TPAQUITO
#define __TPAQUITO
// Y declaramos el template con sus métodos y atributos
template <class T>
class TPaquito {
private:
T elementos;
public:
// Constructor
TPaquito() {}
T getElementos() { return elementos; }
};
#endif
|
Después, en cualquier dichero donde quieras usar el template te basta con hacer
| Código: |
#include "paquito.h"
//y ya podrás usar tu template para declarar por ejemplo una variable
TPaquito<int> p1;
|
|
|
| Volver arriba |
|
 |
|