PDA

Visualizza la versione completa : [C++] Strano modo di usare i typedef


XWolverineX
19-10-2005, 19:44
Salve.
Molte volte mi capita di vedere una struct fatta in questo modo.



typedef struct _vertex_
{
float x;
float y;
float z;
DWORD Color;
} Vertex;



Ma perchè? Non avrebbe potuto scrivere



struct Vertex
{
float x;
float y;
float z;
DWORD Color;
}

O se la voleva fare unica



struct
{
float x;
float y;
float z;
DWORD Color;
} Vertex;

Non riesco a capire

anx721
19-10-2005, 20:32
il typedef serve a definire un nuovo nome di tipo.

In c la tua prima soluzione funziona ma ti costringe a dichiare le variabili come:

struct Vertex v;

cioè devi sempre mettere struct davanti; utilizzando il typedeg associo alla parola Vertex il tipo struct {...} che hai definito e quindi puoi dichiare come:

Vertex v;

In c++ puoi dichiarare come

Vertex v;

anche se nonhai usato il typedef; comunque è bene definire i tipi sempre con il typedef.

XWolverineX
19-10-2005, 20:56
AAAAH ecco in C è utilissimo, poichè eviti di scrivere ogni volta struct.
Grazie mille.

Loading