[Perl] Numero máximo de argumentos

Rafael F. Rodríguez rafaelf en sitelcom.es
Lun Ene 17 11:05:23 CST 2005


Holas :-) .

 Muchas gracias por la respuesta pero me sucede igual :-? . Lo tengo de esta 
forma.

 Sub FUNCION {
  my $cResultado = "";
  my $rReg = $_[0];

  my $valor1 = $rReg->[0];
  my $valor2 = $rReg->[1];
  .
  .
  .
  return ($cResultado);
 }
 .
 .
 .
 @aParametros = ($sql->{campo1},$sql->{campo2}.$sql->{campo3}...,
$sql->{campo33});
 $rReferencia = \@aParametros;
 $cCadena = $cCadena.FUNCION ($rReferencia); #devuelve una cadena que es 
concatenada a la anterior.

 y me devuelve Too many arguments for main:FUNCION at gta.pl line 492, near 
"$rReferencia)" :-?



El Lunes, 17 de Enero de 2005 15:39, Max de Mendizábal escribió:
> Mi recomendación es que no pases tantos parámetros. Es mejor que metas los
> datos en un arreglo y pases la referencia a la función. En cualquier libro
> de programación te dirán lo mismo: una función con tantos parámetros es
> candidato seguro a que se puedan cometer errores.
>
> Saludos
> Max
>
> On Mon, 17 Jan 2005, Rafael F. Rodríguez wrote:
> > Hola Lista.
> >
> > Estoy pasando parámetros a una función pero me sale "too many arguments
> > for main::TRANSP at ....."
> >
> > La función tiene 31 parámetros que lo recogo con $_[x], ¿Es que acaso
> > existe un número máximo de parámetros? ¿como puedo solucionar este
> > problema?

-- 
Rafael F. Rodríguez 
Sitel Comunicaciones (Departamento de Desarrollo y Linux).
Web: http://www.sitelcom.es
Tlf: +34 954.991 259
________________________________
Web Personal: http://myr.homelinux.org.
GPG Llave pública: http://www.rediris.es/cert/servicios/keyserver/
Key fingerprint = 97FA 7CDF 12FD 7A94 1403  225C 807E 423A 41E8 3B8B
---
Usuario Registrado Linux: 377864 (http://counter.li.org)
Máquina Registrada Linux: 276412



Más información sobre la lista de distribución Perl