[Roma.pm] Prototipi e riferimenti

Marco Balestra balestra at cesmail.net
Thu Aug 7 04:08:41 PDT 2008


On 07/ago/08, at 12:50, Flavio Poletti wrote:

>   a seguito della discussione sui prototipi disturbata da chili di
> carbonara & co, un piccolo test (in fondo all'email).

BURP! :-)

> Sostanzialmente l'uso di \$ implica che venga sempre passato un
> riferimento al parametro attuale. Nel caso di un riferimento ad hash,
> quindi, viene passato un riferimento al riferimento, pertanto occorre
> effettuare due livelli di dereferenziazione.
>
> Marco: tutto sommato, vista la sub che devi scrivere, ti conviene
> avvalerti del fatto che @_ contiene alias ai parametri attuali e  
> regolarti
> di conseguenza:

Ma infatti il prototipo che ho usato non è (\$$), bensì (\[$%]$) :-P

E il dubbio quindi è: se sto passando uno scalare che è un riferimento  
ad hash, con quel prototype lo accetta come \% oppure lo considera  
come \$ e quindi un riferimento a riferimento ad hash?
E ancora: farebbe differenza (\[%$]$) rispetto a (\[$%]$) ?

Poi alla fine userò $_[0], chiaro, si fa più che altro per ruzzare..

Appena ho un minuto faccio la prova, ma così finisce il gusto della  
discussione gratuita :-D

>   sub sv {
>      $_[0] = $_[1] and return unless ref $_[0];
>      # Qui scrivi la tua funzione secondo il tuo stile...
>      my $ref = shift;

Proprio quel che ho scritto dopo la chiacchierata di ieri :-D
-- 
Marco Balestra
IT consultant
balestra at cesmail.net



More information about the Roma mailing list