Arrays

Post Reply
jvargas
Posts: 63
Joined: Sun Apr 08, 2007 9:50 pm
Location: Lima Perú

Arrays

Post by jvargas »

Hola Amigos
Es esto un Bug?, o qué hago mal
Al 1er array “TabP” debo incluir algunos elementos, cada nueva linea esta basada en otro array “xTab”, con ciertas modificaciones.
Esta es la rutina que al parecer es muy simple.

#include "FiveWin.ch"
function main()
local TabP:={{"Z","Y","X","W"}}
local xTab:={"A","B","C","D"}
local z ,y, a:=""
for z=1 to 3
xTab[1]:=str(z,1)
xTab[3]:=str(z,1)
AADD(TabP,xTab)
y:=len(TabP)
a:=a+str(y)+","+TabP[y,1]+TabP[y,2]+TabP[y,3]+TabP[y,4]+CRLF
next
?"13",len(TabP),a &&' ok
a:=""
for z=1 to len(TabP) &&' aca ya esta mal
a:=a+str(z)+","+TabP[z,1]+TabP[z,2]+TabP[z,3]+TabP[z,4]+CRLF
next
?"18",a
return

El resultado hasta la linea 13 es éste y está bien, la 1ra y la 3ra columna tienen “1”,”2” ,”3” en los elementos adicionados de TabP.
2=> 1B1D
3=> 2B2D
4=> 3B3D

inmediatamente después verifico todo el array TabP y las lineas que fueron adicionadas han sido cambiadas como una copia de la ultima linea adicionada, todas tienen “3” en la 1ra y 3ra columna
1=> ZYXW
2=> 3B3D
3=> 3B3D
4=> 3B3D

es esto un problema de xHarbour? O qué hago mal?.
Saludos y muchas gracias por la ayuda.
Jorge Vargas
FW-705, xHarbour 0.99.71 (SimpLex) , bcc55
jvargas
Posts: 63
Joined: Sun Apr 08, 2007 9:50 pm
Location: Lima Perú

Post by jvargas »

Hola Amigos:
A nadie le sucede esto? o hay algo que hago mal?
gracias.
Jorge Vargas
FW-705, xHarbour 0.99.71 (SimpLex) , bcc55
User avatar
Patricio Avalos Aguirre
Posts: 1028
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile
Contact:

Post by Patricio Avalos Aguirre »

debes usar la funcion aClone

AADD(TabP,aclone(xTab) )
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
jvargas
Posts: 63
Joined: Sun Apr 08, 2007 9:50 pm
Location: Lima Perú

Post by jvargas »

Hola Patricio
Muchas gracias por tu respuesta y la solucion.
medio raro, pero funciona
saludos
Jorge :lol:
FW-705, xHarbour 0.99.71 (SimpLex) , bcc55
Post Reply