Sto guardando nel wiki
http://www.gambas-it.org/wiki/index.php?title=Gli_Oggetti_e_le_Classi (http://www.gambas-it.org/wiki/index.php?title=Gli_Oggetti_e_le_Classi)
in particolare questa parte
'Esempio 2: referenziazione di una classe dinamica
DIM hWin2 AS Window
hWin2 = hWin
e la relativa nota
b) Nell'esempio 2 viene definita una variabile di tipo Window, che viene poi associata all'oggetto precedente hWin; in questo caso non viene creato un nuovo oggetto, ma solo un riferimento a quello già esistente. In questo caso, l'eliminazione della variabile hWin2 non distruggerà l'oggetto hWin, ma toglierà solo il suo riferimento; in ogni caso la variabile precedente hWin, ovvero il vero riferimento all'oggetto, manterrà sempre l'oggetto in memoria. L'eliminazione dell'oggetto dovrà essere eseguita agendo sul proprio metodo ".Delete()" (se presente), o eliminando la stessa variabile hWin. E' da notare che, se viene cancellata la variabile originale hWin, e viene mantenuta hWin2, l'oggetto resta comunque in memoria, dato che esiste comunque un suo riferimento valido. Questo giochetto può essere molto utile in alcuni casi, ma è necessario fare molta attenzione a non lasciare appesi riferimenti inutili.
dubbio:
non dovrebbe essere?
'Esempio 2: referenziazione di una classe dinamica
DIM hWin AS Window
hWin2 = hWin
nella seconda riga dichiaro che hWin2 sarà uguale alla variabile hWin che ho dichiarato sopra.
C'è un errore nel wiki o nella mia zucca? :)
:ciao:
No, è corretta la wiki.
Viene spiegato prima con l'esempio 1 che crea e istanzia (new) hwin quindi è così:
Dim hwin As New Window
Dim hwin2 As Window = hwin
Zucca? Chi ha parlato di zucca? ;D
:ciao: :ciao: