|
|
|
|
|
Dicas
|
|
Visual Basic (Declarações/Variáveis)
|
|
|
Título da Dica: Instanciando Objetos Corretamente
|
|
|
|
Postada em 14/8/2000 por Webmaster
webmaster@vbweb.com.br
Evite fazer declarações de objetos com "New", pois quando você faz isso o VB NÃO está criando uma referencia. Ele só irá instanciar (criar a referencia) quando você referencia-lo pela 1º vez (usar um método ou alterar uma propriedade deste objeto). O problema disto é que a cada vez que você referenciar este objeto, o VB irá verificar se ele já foi instanciado ou não. Quer dizer, gera uma lentidão neste processo...
Confuso? Veja:
Dim varObj As New Objeto 'O VB não instanciou o objeto.
varObj.Propriedade = 7 'Aqui o VB verificou se o objeto já estava instanciado. Como ele 'notou que nao, ele instanciou
varObj.Metodo 100 'Aqui o VB também verificou se o objeto ja estava instanciado. 'Isto causa lentidão!
'E o pior: Set varObj = Nothing 'Descarregou-o da memória If varObj Is Nothing Then Msgbox "Objeto destruído!" End If Ele NÃO vai mostrar a mensagem "Objeto destruído!", pois o objeto não será totalmente descarregado da memória!!!
Para evitar tudo isso, declare apenas como "Objeto".
'Forma correta (recomendada): Dim varObj As Objeto Set varObj = New Objeto
Não esqueça de liberar sua memória após usar o objeto. P/ isso use Nothing: Set varObj = Nothing
|
|
|
|
|