/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

¿Por qué usar typedef con estructuras?

 
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
Txantxiku



Registrado: 11 Dic 2011
Mensajes: 15

MensajePublicado: 11/01/2012 1:34 am
Título: ¿Por qué usar typedef con estructuras?

En el libro que estoy usando crea una estructura y con typedef la define como un nuevo tipo. Pero a mí me parece que no es necesario. Creo que al crear la estructura y darle un nombre ya se puede usar como un tipo nuevo. Este es el ejemplo:
//: C03:SelfReferential.cpp
// Allowing a struct to refer to itself

typedef struct SelfReferential {
int i;
SelfReferential* sr; // Head spinning yet?
} SelfReferential;

int main() {
SelfReferential sr1, sr2;
sr1.sr = &sr2;
sr2.sr = &sr1;
sr1.i = 47;
sr2.i = 1024;
} ///:~
Si en su lugar escribo este código creo que el comportamiento es idéntico:
//: C03:SelfReferential.cpp
// Allowing a struct to refer to itself
struct SelfReferential {
int i;
SelfReferential* sr; // Head spinning yet?
} ;

int main() {
SelfReferential sr1, sr2;
sr1.sr = &sr2;
sr2.sr = &sr1;
sr1.i = 47;
sr2.i = 1024;
cout<<sr1.sr<<endl<<sr2.sr<<endl<<sr1.i<<endl<<sr2.i;
} ///:~
Supongo que estaré equivocado pero si alguien me pued explicar cuál es la diferencia entre usar typedef o no hacerlo se lo agradecería.
_________________

Las mejores escenas de la historia del cine
Volver arriba
cheroky



Registrado: 22 Sep 2005
Mensajes: 2479
Ubicación: Valladolid (España)

MensajePublicado: 11/01/2012 2:25 am
Título:

Hola.

typedef no crea un nuevo tipo, simplemente añade nombres (alias) ya sea para tipos atómicos o agregados.

En C++ (que no C) es innecesario declarar struct mediante typedef ya que es inocuo, salvo que se quiera tener distintos alias para un mismo tipo de agregado (struct, clas, etc).


·?0ƒ·
_________________
La cuestión no es si hay vida inteligente en otros planetas lejanos. La cuestión es si hay vida inteligente aquí.
Volver arriba
      Índice del Foro elrincondelc.com -> Principiantes C/C++
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com