sexta-feira, 30 de novembro de 2001

Passe as variaveis por valor sem ByVal

Se você deseja passar as variáveis por valor, para uma Sub ou Function que não teve seus argumentos declarados com ByVal, use '('e ')' em torno da variável que vc está passando como parâmetro.


Veja o código do exemplo. A variával Var2 tem seu valor alterado, porque foi passada por referência (default no VB até a versão 6), enquanto que a variável Var1 não, embora a sub MudaValor não teve seus primeiro argumento declarado como ByVal.


Sub MudaValor(Var1 As String, Var2 As String)


Var1 = "Valor alterado"
Var2 = "Valor alterado"


End Sub


'====================


Private Sub Form_Click()


Dim Var1 As String
Dim Var2 As String


Var1 = "O valor não foi alterado"
Var2 = "O valor não foi alterado"


MudaValor (Var1), Var2


Print Var1
Print Var2


Print


Var1 = "O valor não foi alterado"
Var2 = "O valor não foi alterado"


MudaValor Var1, Var2


Print Var1
Print Var2


End Sub


'===========================


Execute o programa, e no form que abrir, dê um clique no mesmo. O resultado das chamadas à Sub MudaValor aparecerão impressas no próprio form



Esta matéria foi postada originalmente no ASP4Developers por Valmir Cinquini (site), que na época era "Analista/Programador C#, VB.Net, ASP, VB, Javascript e T-SQL

www.cinquini.com.br/vcinquini>". Hoje, vai saber...

0 comentários: