Differenze tra le versioni di "Visualizzare l'elenco di tutti gli elementi rilevanti del linguaggio Gambas contenuti dal codice del progetto"

Da Gambas-it.org - Wikipedia.
 
(3 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
Se si intende vedere l'elenco di tutti gli elementi rilevanti del linguaggio Gambas contenuti dal codice del progetto, è possibile dereferenziare opportunamente il ''Puntatore'' ottenuto dal Metodo "''Object.Address( )''", nel quale sia stato posto come suo argomento la parola-chiave "''Me''".
+
Se si intende vedere l'elenco di tutti gli elementi rilevanti del linguaggio Gambas contenuti dal codice del progetto, è possibile dereferenziare opportunamente il ''Puntatore'' ottenuto dal Metodo "Object.Address()", nel quale sia stato posto come suo argomento la parola-chiave "Me".
<BR>Gli elementi presenti nel codice possono essere anche dichiarati come "''Privati''".
+
<BR>Gli elementi presenti nel codice possono essere anche dichiarati come "''Privati'' ".
  
  
Riga 6: Riga 6:
 
  '''Public''' Sub Main()
 
  '''Public''' Sub Main()
 
    
 
    
  Dim p As Pointer
+
  Dim p As Pointer
  Dim s As String
+
  Dim s As String
 
    
 
    
 
   p = Object.Address(Me)
 
   p = Object.Address(Me)
Riga 20: Riga 20:
 
  '''Private''' Procedure Visualizza(po As Pointer)
 
  '''Private''' Procedure Visualizza(po As Pointer)
 
    
 
    
  Dim i As Integer
+
  Dim i As Integer
  Dim p1, p2 As Pointer
+
  Dim p1, p2 As Pointer
 
      
 
      
 
   p1 = Pointer@(po + SizeOf(gb.Pointer) * 5)
 
   p1 = Pointer@(po + SizeOf(gb.Pointer) * 5)
Riga 32: Riga 32:
 
       Print
 
       Print
 
     Endif
 
     Endif
  Next
 
 
   Next
 
   Next
 
    
 
    
 
  '''End'''
 
  '''End'''
 +
Per conoscere il nome del Modulo che contiene questo codice, si farà partire il ciclo "FOR" da -8 o più oltre.

Versione attuale delle 16:25, 11 set 2022

Se si intende vedere l'elenco di tutti gli elementi rilevanti del linguaggio Gambas contenuti dal codice del progetto, è possibile dereferenziare opportunamente il Puntatore ottenuto dal Metodo "Object.Address()", nel quale sia stato posto come suo argomento la parola-chiave "Me".
Gli elementi presenti nel codice possono essere anche dichiarati come "Privati ".


Mostriamo un semplice esempio pratico:

Public Sub Main()
 
  Dim p As Pointer
  Dim s As String
  
  p = Object.Address(Me)
  
  s = "Testo qualsiasi."
  
  Visualizza(p)
  
End


Private Procedure Visualizza(po As Pointer)
 
  Dim i As Integer
  Dim p1, p2 As Pointer
   
  p1 = Pointer@(po + SizeOf(gb.Pointer) * 5)
  p2 = Pointer@(p1)
  
  For i = 0 To 87
    If Byte@(p2 + i) > 0 Then
      Print Chr(Byte@(p2 + i));
    Else
      Print
    Endif
  Next
  
End

Per conoscere il nome del Modulo che contiene questo codice, si farà partire il ciclo "FOR" da -8 o più oltre.