Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
20/04/08 14:08
anfred2007
Ciao a tutti,
sono nuovissimo nel mondo della programmazione.
Mi sono trovato di fronte a questo problema:

con questa classe

***CODE***
Public Class carta
Public valore As Integer
Public seme As Integer
End Class
***FINE CODE

ho dichiarato (senza inizializzare) questo array:
***CODE
Dim foglio(52) As carta
*** FINE CODE
e per "popolare" l'array

*** CODE
For a = 1 To 13
For b = 1 To 4
z = z + 1
----> foglio(z).valore = a
foglio(z).seme = b
Next b
Next a
*** FINECODE


però appena provo a compilare ecco il messaggio :(
Riferimento a un oggetto non impostato su un'istanza di oggetto.

tra i suggerimenti c'era quello di usare NEW ma con gli array non funziona. Come posso fare?

Sperando di essere stato chiaro ringrazio tutti coloro che vorranno aiutarmi
aaa
20/04/08 17:42
gantonio
O scrivi

    foglio(z) = New carta
    foglio(z).valore = a
    foglio(z).seme = b


oppure usi una

Structure e non una Class
aaa
20/04/08 20:17
anfred2007

avevo dimenticato di scriverlo 8-|
il codice è in visual basic (non so se può essere utile)

per quanto riguarda la riga suggerita
dim foglio(z) as new carta
il compilatore dice che gli
"arrays cannot be declared with 'new' "

le structures non le ho mai usate, vedrò di imparare! Grazie per la dritta :)
aaa
20/04/08 20:24
anfred2007


Rettifico!!! Sono così rimbambito che non avevo tolto il dim all'inizio della riga!!!

sembra funzionare. Grazie tante :k:
aaa
20/04/08 20:45
gantonio
Beh ... meno male che avevo scritto le 3 righe piu' chiaramente possibile (ma da dove hai preso quel dim??)

Comunque, cerca di comprendere anche cosa vuol dire quel New scritto in quel modo e anche quello che ti ho detto sulla structure ...

Altrimenti, se copi-incolli la correzione senza analizzare il codice, non impari nulla ...
aaa
24/04/08 8:44
anfred2007
Prima lezione pratica sulla programmazione!
Apprezzo ogni genere di aiuto :)
Ancora grazie!
aaa