Hola todos<br><br>Quería usar el operator &quot;? :&quot; para ésta operación:<br><br>defined $args{$k}<br>&nbsp;&nbsp;&nbsp; ?&nbsp;&nbsp;&nbsp; push @{ $args{$k} }, $v<br>&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; $args{$k} = [ $v ];<br><br>pero me sale el error &quot;Can&#39;t modify push in scalar assignment&quot;.
<br><br>Lo que es interesante, es que la forma:<br><br>if ( defined $args{$k} ) {<br>
&nbsp;&nbsp;&nbsp; push @{ $args{$k} }, $v;<br>}<br>else {<br>
&nbsp;&nbsp;&nbsp; $args{$k} = [ $v ];<br>}<br>
<br>funciona bien, tambien la construcción:<br><br>defined $args{$k} and push @{ $args{$k} }, $v or $args{$k} = [ $v ];<br><br>(sí, es una forma muy rara).<br><br>Algunas ideas?<br><br>Saludos, Bruno<br>