Como recorrer mas rapido un arreglo

Como recorrer mas rapido un arreglo

Postby Vladimir Zorrilla » Fri Mar 10, 2006 6:37 pm

Estimados amigos uso xharbour

Tenemos un arreglo de 2 dimensiones adbf

Quiere solo recorrer la columna 3 y cambiarla a numerica

For Fila=1 to len(aDbf)
aDbf[Fila,3]:=val(aDbf[Fila,3] )
Next Fila

Esto se puede hacer mas rapido con AEVAL y en todo
caso como serie el codigo


O es q para q sea mas rapido hay q usea FOR EACH y como
se haria en este caso
ME INTERESA FW Y XHB POR SER OPEN SOURCE
Vladimir Zorrilla
 
Posts: 225
Joined: Tue Feb 28, 2006 4:25 pm
Location: PERU

Postby Antonio Linares » Fri Mar 10, 2006 6:41 pm

Vladimir,

El AEval() no tiene necesariamente que ser más rápido. De todas formas, podrías hacerlo así:

AEval( aDbf, { | a | a[ 3 ] := Val( a[ 3 ] ) } )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41462
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby MarioG » Fri Mar 10, 2006 7:11 pm

Vladimir:
Walter Negro da una buena explicación de FOR EACH en su BLog
http://cosadenegro.blogspot.com/2005/03/optimizacin-v-for-each.html
Resistencia - "Ciudad de las Esculturas"
Chaco - Argentina
User avatar
MarioG
 
Posts: 1380
Joined: Fri Oct 14, 2005 1:28 pm
Location: Resistencia - Chaco - AR

Re: Como recorrer mas rapido un arreglo

Postby wmormar » Sat Mar 11, 2006 1:55 am

Vladimir Zorrilla wrote:Estimados amigos uso xharbour

Tenemos un arreglo de 2 dimensiones adbf

Quiere solo recorrer la columna 3 y cambiarla a numerica

For Fila=1 to len(aDbf)
aDbf[Fila,3]:=val(aDbf[Fila,3] )
Next Fila

Esto se puede hacer mas rapido con AEVAL y en todo
caso como serie el codigo


O es q para q sea mas rapido hay q usea FOR EACH y como
se haria en este caso


He hecho pruebas con FOR EACH, va muy rápido la lectura de arreglos.

Comprobado.
William, Morales
Saludos

méxico.sureste
User avatar
wmormar
 
Posts: 1074
Joined: Fri Oct 07, 2005 10:41 pm
Location: México


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Danielmaximiliano, Google [Bot] and 82 guests