[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