Differenze tra le versioni di "Strutture: dichiarazione ed uso"

Da Gambas-it.org - Wikipedia.
Riga 22: Riga 22:
 
   
 
   
 
   variabValor = inputbox("Immetto un valore per \"riempire\" il campo \"variabile\" di \"nuovaStruttura\": valore3 .")
 
   variabValor = inputbox("Immetto un valore per \"riempire\" il campo \"variabile\" di \"nuovaStruttura\": valore3 .")
  <Font Color= #006400>' ''attribuisco il valore a ciascun campo variabile della struttura''
+
  ' ''(qui i valori sono due "costanti" ed uno "variabile"):''</font>
+
  <Font Color= #006400>' ''attribuisco un valore a ciascun campo variabile della struttura''
 +
  ' ''(qui i valori sono due "costanti" ed uno "variabile" che immetto io con InputBox):''</font>
 
   <Font Color= #0000FF>nuovaStruttura</font>.valore1 = 3
 
   <Font Color= #0000FF>nuovaStruttura</font>.valore1 = 3
 
   <Font Color= #0000FF>nuovaStruttura</font>.valore2 = 6
 
   <Font Color= #0000FF>nuovaStruttura</font>.valore2 = 6
Riga 33: Riga 34:
 
  '''Public''' Sub Button1_Click()
 
  '''Public''' Sub Button1_Click()
 
   
 
   
  <Font Color= #006400>' ''quindi opero con i valori contenuti da "nuovaStruttura"''</font>
+
  <Font Color= #006400>' ''quindi opero con i valori contenuti da "nuovaStruttura",''
 +
' ''per esempio li faccio mostrare in console:</font>
 
   With <Font Color= #0000FF>nuovaStruttura</font>
 
   With <Font Color= #0000FF>nuovaStruttura</font>
 
     Print .valore1
 
     Print .valore1

Versione delle 09:07, 14 mag 2012

La Struttura similmente all'Array aggrega due o più elementi. Però, mentre l'Array aggrega elementi del medesimo tipo (per esempio tutti valori di tipo Integer, o di tipo Byte, etc), la Struttura aggrega solitamente (ma non necessariamente) elementi di tipo diverso.

Dichiariamo una Struttura con dei campi, che dovranno essere riempiti con dei valori. Tale Struttura avrà un proprio nome e farà da modello alle particolari variabili strutture che saranno effettivamente utilizzate per contenere valori.


PUBLIC Struct NomeStruttura    ' definisco i campi della Struttura "modello"

' Questa Struttura si riserverà, occupandola, 9 byte di memoria in tutto:
  valore1 As Integer   ' dal byte n° 0 al n° 3
  valore2 As Integer   ' dal byte n° 4 al n° 7
  valore3 as Byte      ' il byte n° 8
 END Struct

' creo una struttura "reale" composta a perfetta immagine di quella modello:
   nuovaStruttura As New NomeStruttura



Public Sub Form_Open()

Dim variabValor as Byte

 variabValor = inputbox("Immetto un valore per \"riempire\" il campo \"variabile\" di \"nuovaStruttura\": valore3 .")

' attribuisco un valore a ciascun campo variabile della struttura
' (qui i valori sono due "costanti" ed uno "variabile" che immetto io con InputBox):
 nuovaStruttura.valore1 = 3
 nuovaStruttura.valore2 = 6
 nuovaStruttura.valore3 = variabValor

End


Public Sub Button1_Click()

' quindi opero con i valori contenuti da "nuovaStruttura",
' per esempio li faccio mostrare in console:
  With nuovaStruttura
    Print .valore1
    Print .valore2
    Print .valore3
  End With

End