Kan man returnera 2 värden från en funktion? Nej, du kan endast returnerna ett värde från en funktion. Men du kan t ex returnera en klass som innehåller en mängd värden som beräknats i funktionen. Funktioner kan ju också ändra data i de parametrar som följer "call by reference". Ett exempel enligt Åhl's förslag: Eller så kan du göra som tidigare nämndes, ändra värdena i funktionen...Returnera flera värden från en funktion
Hur i så fall?
mvh OlaSv: Funktion
Sv:Funktion
<code>
Function MinFunktion(byval invarde as string) As ArrayList
Dim x As New ArrayList
x.Insert(1, "test 1")
x.Insert(2, "test 2")
return x
End Function
' för att använda och loopa ut värdena
Dim minArray As New ArrayList = MinFunktion("Prov")
Dim arrayObject As System.Collections.IEnumerator = minArray .GetEnumerator()
While arrayObject.MoveNext()
Console.Write(ControlChars.Tab + "{0}", arrayObject.Current)
End While
</code>Sv:Funktion
<code>
Public Sub MinFunktion(ByRef a As Integer, ByRef b As Integer)
Dim t As Integer
t = a
a = b
b = t
End Sub
Dim tal1, tal2 As Integer
tal1 = 5
tal2 = 10
'nu är tal1 = 5 och tal2 = 10
MinFunktion(tal1, tal2)
'nu är tal1 = 10 och tal2 = 5
</code>