Oppure

Loading
08/08/11 12:46
giulioscatto
Buon pomeriggio a tutti.

Durante un lungo viaggio mentale sono arrivato a chiedermi se fosse possibile (non in C, in generale) avere un puntatore a un tipo (es. puntatore al tipo int).
Cosa dite? (a parte di bere meno di domenica :blush: :rotfl: )

Grazie a thousand!
Giulio

______________________________________________
edit:
nel senso di un puntatore non al valore di tipo xxx ma al tipo xxx stesso.
Ultima modifica effettuata da giulioscatto 08/08/11 13:21
aaa
08/08/11 12:57
comina8
Penso di non aver capito la tua domanda :-|
aaa
08/08/11 12:57
TheKaneB
Un tipo è solo una convenzione logica, non esiste "materialmente" quindi non puoi conoscere il suo indirizzo (puntatore).

Con le classi è un pelo diverso, perchè anche se sono dei tipi, hanno anche dei metodi (codice) il quale ha una posizione fisica ben precisa in memoria e quindi puoi puntare ai suoi metodi.

Puntare ad un metodo di una classe, comunque, non equivale ad avere il puntatore "alla classe" ma soltanto al codice delle sue funzioni, quindi sono speciali puntatori a funzione.
aaa
08/08/11 13:10
Nullable
Intendi una cosa del genere : int* puntatore; ?
Se intendi questo allora certo che è possibile. Un puntatore non è altro che il riferimento ad un'area di memoria in cui risiede un valore, questo valore è determinato dal tipo ( int, char, float, double etc... ).
Ultima modifica effettuata da Nullable 08/08/11 13:10
aaa
08/08/11 13:24
giulioscatto
Postato originariamente da TheKaneB:

Un tipo è solo una convenzione logica, non esiste "materialmente" quindi non puoi conoscere il suo indirizzo (puntatore).



Ok, è chiaro. Grazie!
aaa
08/08/11 13:32
Nullable
Postato originariamente da giulioscatto:
______________________________________________
edit:
nel senso di un puntatore non al valore di tipo xxx ma al tipo xxx stesso.


Ah, io avevo capito che a te interessasse sapere se si può avere un puntatore di un determinato tipo, invece a te interessa sapere se è possibile ricavare il tipo conoscendo il puntatore. TheKaneB è stato l'unico che ci ha azzeccato lol
aaa
08/08/11 13:45
giulioscatto
Postato originariamente da Nullable:

Postato originariamente da giulioscatto:
______________________________________________
edit:
nel senso di un puntatore non al valore di tipo xxx ma al tipo xxx stesso.


Ah, io avevo capito che a te interessasse sapere se si può avere un puntatore di un determinato tipo, invece a te interessa sapere se è possibile ricavare il tipo conoscendo il puntatore. TheKaneB è stato l'unico che ci ha azzeccato lol


Credo che fraintendi ancora :) non si tratta di ricavare il tipo dal pointer ma di avere un pointer al tipo (esempio impossible: type(int)* trollface; poi trollface può essere usato come ptr a tipo - so che esiste il typedef e il suo utilizzo ma puntavo :rotfl: a qualcosa di più astratto (doppio :rotfl: poiché volevo fare una roba del genere in C).
aaa
09/08/11 9:06
Il Totem
Non è possibile e non ha senso in C, ma in linguaggi riflessivi si può avere un riferimento ad un tipo. In C#, ad esempio, per ogni tipo esposto a runtime esiste un oggetto Type che lo rappresenta.
aaa