Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: AnthonyS en 14 Diciembre 2016, 19:03 PM

Título: ¿Alguien podría ayudarme con este fragmento de código?
Publicado por: AnthonyS en 14 Diciembre 2016, 19:03 PM
Quisiera usar este fragmento,el caso es que necesito implementar esta estructura para cualquier tipo de dato,y usar posicon como un tipo de dato que apunte a nodos que pide el problema.
Gracias de antemano.

Código (cpp) [Seleccionar]
template<typename T>
struct nodo
{
   T elemento;
   nodo* anterior;
   nodo* siguiente;
   nodo(const T& contenido,nodo* a=POS_NULA,nodo* b=POS_NULA) :     elemento(contenido),anterior(a),siguiente(b) {};
};

template<typename T>
typedef nodo* posicion;




Mod: Los códigos deben ir en etiquetas GeSHi
Título: Re: ¿Alguien podría ayudarme con este fragmento de código?
Publicado por: ivancea96 en 15 Diciembre 2016, 17:19 PM
Esa estructura ya funciona para cualqueir tipo de dato, con el template.
Lo único, ese typedef. No puedes hacer un template de un typedef.
Si utilizas C++11 o superior, podrías utilizar using:
Código (cpp) [Seleccionar]
template<typename T>
using posicion = nodo<T>*;


Pero salvo que te sea realmente necesario, yo no lo haría.
Título: Re: ¿Alguien podría ayudarme con este fragmento de código?
Publicado por: AnthonyS en 15 Diciembre 2016, 19:15 PM
Muchas gracias por la respuesta,he terminado haciéndolo de otra forma,pero aun así seguramente vaya a usar tu propuesta en otros código.
Un saludo.
Anthony