Bart Aimar wrote:
Il 18/12/2010 13:51, Emanuele ha scritto:
Ciao,
Ciao Emanuele...  basta nominare "ARRAY" per evocarti... :-)

Ed in verità non capisco il perché dato che li ho sempre odiati... :-P

Ma di questo:
dim a(1,2)
avrei di che lamentarmi... :-)

Subito ho pensato basta modificare dim a(1,2) in dim a(1,2,3,4..,n)

Ma ho dovuto constatare che non funziona così. :-(

Funziona esattamente come una matrice.
Ognuno di quei numeri identifica la taglia di una "dimensione".
Es:
dim a(1) => array di 1 x 2 elementi (identificati da 0 e 1)
dim a(100) => array di 1 x 101 elementi (identificati ad 0, 1, 2, ..., 100)
In altre parole due vettori.

dim a(1, 4) => matrice bidimensionale di 2 x 5 elementi (identificati da coppie di numeri: (0,0), (0,1), ..., (0,4), (1,0), (1,1), ..., (1,4))

dim a(1,3,2) => matrice tridimensionale di 2x4x3 elementi (identificati da triplette di numeri: (0,0,0), (0,0,1), ecc.)

ecc.

Sbirciando un po' in giro ho intravisto (ma non capito) la possibilità di impostare degli array "elastici", il cui dimensionamento non sia critico, ma forse non è così semplice...

A questo punto, se al codice voglio aggiungere una coppia ?

redim preserve a(1,3)
'non dimenticare il "preserve" altrimenti
'tutto quello che hai inserito prima
'sparisce come neve al sole
a(0,3) = "pluto"
a(1,3) = "paperino"

redim preserve a(1,4)

a(0,4) = "topolino"
a(1,4) = "nonna papera"

/me si assenta qualche istante a controllare la posta per vedere se è già arrivata la denuncia della Walt Disney... :-P

Più in generale, se ad esempio vuoi metterlo in un loop, potrebbe assomigliare a qualcosa di questo tipo:
dim a(1,0)
for i=0 to n
    redim preserve a(1,i)
    a(0,i) = funzione_che_restituisce_indice(i)
    a(1,i) = funzione_che_restituisce_contenuto(i)
next

Naturalmente la funzione di ricerca che ho messo nell'altra mail ha tanti di quei limiti che nemmeno sto ad elencarli...su liste semplici funziona, comunque è da prendere con le molle.

Ai tempi avevo usato anche un altro "trucco" per ottenere qualcosa di simile ma leggermente diverso...però è talmente brutto che forse è meglio me lo tenga per me.

Certo questo sarebbe veramente campo per "associative array"...

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Rispondere a