Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/04/2007, 02:17
jferrero
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 525
Antigüedad: 18 años, 9 meses
Puntos: 11
Re: Variable scope con local

Puedes entonces lo que necesitas es cambiar los contenidos de @datos antes de llamar a integral(). Si no puedes pasar variables a f(), entonces la opción es usar variables globales. Pues entonces debes cambiarlas antes de llamar a integral().

La línea inventada que tienes sólo te servirá si @set_datos es un array de arrays de datos, pero quedará mucho mejor si lo haces con referencias:

A la hora de construir la estructura de datos:
Código:
our $datos_ref;
our @set_datos;
# bucle para inicializar los datos
# ...
    push @set_datos, [@datos];
# ...
Luego, en el bucle principal
Código:
for $datos_ref ( @set_datos ) {
    integral();
}
y dentro de integral();
Código:
    for my $dato ( @$datos_ref ) {
         ...
    }