Bonjour,
Ma question porte sur le comportement de ByVal dans une fonction sous VB.NET (VB2010). Habitué à la programmation sous VBA/VB6, le comportement de ByVal me semble différent sous VB.NET... IL se comporte comme un ByRef sous VB6 ???
Voici un exemple en raccourci :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim tab(3) As String
tab(1) = "1"
tab(2) = "3"
tab(3) = "2"
Essai(tab)
For t = 1 To 3
MessageBox.Show(tab(t))
Next
End Sub
Function Essai(ByVal ParamArray Tableau() As String) As Double
System.Array.Sort(Tableau)
Essai = 10
End Function
Ma Question : Comment faire pour obtenir un comportement "normal" de byval ??? C'est à dire que tab(t) ne soit pas triée, mais reste comme elle a été passée ?
Je sèche... Est-il obligatoire de passer par la création d'un nouveau objet ? auquel cas à quoi ByVal alors ?
Je n'ai pas vu de piste sur le forum... une idée ?
Amicalement,
Us.