homelinksBlijf op de hoogte van de recente aanpassingen op vbvoorbeelden!
Visual Basic 2010 Voorbeelden

visual basic 2010 broncode voorbeelden

Microsoft Visual Studio 2010Microsoft Developers Network - Visual BasicMicrosoft .NET Framework

4.2. Samengestelde Toekennings Operatoren

Print Email Deel op Facebook Deel op Twitter

Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.

Tot nu toe hebben we steeds de assignmentoperator = gebruikt, maar ook andere assignmentoperators bestaan.

Om op een verkorte wijze een bepaalde rekenkundige bewerking op een numerieke variabele toe te passen samen met het toekennen van de berekende waarde aan die numerieke variabele bestaan een aantal verkorte toekenningsoperatoren :

Bijvoorbeeld += :
value += 1
is gelijk aan
value = value + 1
Analoge samengestelde operatoren voor rekenkundige bewerkingen zijn -=, *=, /=, \= en ^=.
Visual Basic 2010 Broncode
Module CompoundAssignmentOperatorsExample1
    Sub Main()
        Dim value As Integer = 2
        '
        value *= 3 + 4                                                     ' (1)
        '
        Console.WriteLine(value)
        '
        Console.ReadLine()
    End Sub
End Module
Console Application Output
14
Regel (1) kan dus herschreven worden naar :
value = value * (3 + 4)
Ook voor de string-concatenatie-bewerking bestaat een samengestelde operator, namelijk &= :
Visual Basic 2010 Broncode
Module CompoundAssignmentOperatorsExample2
    Sub Main()
        Dim message As String = "Hello"
        '
        message &= " World !"
        '
        Console.WriteLine(message)
        '
        Console.ReadLine()
    End Sub
End Module
Console Application Output
Hello World !
Verderop gaan we nog zien hoe er ook nog samengestelde toekenningsoperatoren bestaan als >>= en <<=.

4.2.1. Oefening

Opgave :
Wat zal de output zijn van onderstaande programma-code ?
Visual Basic 2010 Broncode
Module CompoundAssignmentOperatorsExercise
    Sub Main()
        Dim value1, value2, value3 As Integer
        '
        value1 += 5
        value2 -= value1 * 6 + 1
        value3 += value1 + 5 * value2
        value3 *= value3 / -3
        value1 /= 1 / (value2 + 41)
        value2 \= 10 + value1 / 5
        '
        Console.WriteLine(value1) ' ?
        Console.WriteLine(value2) ' ?
        Console.WriteLine(value3) ' ?
        '
        Console.ReadLine()
    End Sub
End Module
Oplossing :
Visual Basic 2010 Broncode
Module CompoundAssignmentOperatorsSolution
    Sub Main()
        Dim value1, value2, value3 As Integer
        '
        value1 += 5
        ' value1 = value1 + 5
        '         = 0 + 5
        '         = 5
        value2 -= value1 * 6 + 1
        ' value2 = value2 - (value1 * 6 + 1)
        '         = 0 - (5 * 6 + 1)
        '         = 0 - (30 + 1)
        '         = -31
        value3 += value1 + 5 * value2
        ' value3 = value3 + (value1 + 5 * value2)
        '         = 0 + (5 + 5 * -31)
        '         = 0 + (5 + -155)
        '         = 0 + -150 = -150
        value3 *= value3 / -3
        ' value3 = value3 * (value3 / -3)
        '         = -150 * (-150 / -3)
        '         = -150 * 50
        '         = -7500
        value1 /= 1 / (value2 + 41)
        ' value1 = value1 / (1 / (value2 + 41))
        '         = 5 / (1 / (-31 + 41))
        '         = 5 / (1 / 10)
        '         = 50
        value2 \= 10 + value1 / 5
        ' value2 = value2 \ (10 + value1 / 5)
        '         = -31 \ (10 + 50 / 5)
        '         = -31 \ (10 + 10)
        '         = -31 \ 20
        '         = -1
        '
        Console.WriteLine(value1) ' 50
        Console.WriteLine(value2) ' -1
        Console.WriteLine(value3) ' -7500
        '
        Console.ReadLine()
    End Sub
End Module
Console Application Output
50
-1
-7500

Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.