Freigeben über


+ Operator (Visual Basic)

Addiert zwei Zahlen oder gibt den positiven Wert eines numerischen Ausdrucks zurück. Kann auch verwendet werden, um zwei Zeichenfolgenausdrücke zu verketten.

Syntax

expression1 + expression2

oder

+expression1  

Bestandteile

Begriff Definition
expression1 Erforderlich. Beliebiger numerischer oder Zeichenfolgenausdruck.
expression2 Erforderlich, es sei denn, der + Operator berechnet einen negativen Wert. Beliebiger numerischer oder Zeichenfolgenausdruck.

Ergebnis

Wenn expression1 und expression2 beide numerisch sind, ist das Ergebnis ihre arithmetische Summe.

Wenn expression2 nicht vorhanden, ist der + Operator der unäre Identitätsoperator für den unveränderten Wert eines Ausdrucks. In diesem Sinne besteht die Operation aus der Beibehaltung des Vorzeichens expression1, sodass das Ergebnis negativ ist, wenn expression1 negativ ist.

Wenn expression1 und expression2 beide Zeichenfolgen sind, ist das Ergebnis die Verkettung ihrer Werte.

Wenn expression1 und expression2 von gemischten Typen sind, hängt die getroffene Aktion von ihren Typen, ihren Inhalten und der Einstellung der Option Strict-Anweisung ab. Weitere Informationen finden Sie in den Tabellen in "Hinweise".

Unterstützte Typen

Alle numerischen Typen, einschließlich der nicht signierten und Gleitkommatypen und Decimal, und String.

Bemerkungen

Im Allgemeinen + werden arithmetische Ergänzungen nach Möglichkeit ausgeführt und nur verkettet, wenn beide Ausdrücke Zeichenfolgen sind.

Wenn kein Ausdruck ein ObjectAusdruck ist, führt Visual Basic die folgenden Aktionen aus.

Datentypen von Ausdrücken Aktion nach Compiler
Beide Ausdrücke sind numerische Datentypen (SByte, , Byte, Short, UShort, Integer, UIntegerLong, , ULong, Decimal, Singleoder Double) Hinzufügen. Der Ergebnisdatentyp ist ein numerischer Typ, der für die Datentypen von expression1 und expression2. Weitere Informationen finden Sie in den Tabellen "Integer Arithmeetic" in den Datentypen von Operatorergebnissen.
Beide Ausdrücke sind vom Typ String Verbinden.
Ein Ausdruck ist ein numerischer Datentyp und der andere eine Zeichenfolge. Wenn Option Strict dies der Wert ist On, generieren Sie einen Compilerfehler.

Wenn Option Strict ja Off, konvertieren Sie die String Datei implizit in Double und fügen sie hinzu.

Wenn die String Konvertierung nicht möglich ist, wird eine InvalidCastException Ausnahme ausgelöstDouble.
Ein Ausdruck ist ein numerischer Datentyp, und der andere ist Nothing Add, with Nothing valued as zero.
Ein Ausdruck ist eine Zeichenfolge, und die andere ist Nothing Verketten, mit Nothing dem Wert "".

Wenn ein Ausdruck ein Object Ausdruck ist, führt Visual Basic die folgenden Aktionen aus.

Datentypen von Ausdrücken Aktion nach Compiler
Object Der Ausdruck enthält einen numerischen Wert, und der andere ist ein numerischer Datentyp. Wenn Option Strict dies der Wert ist On, generieren Sie einen Compilerfehler.

Wenn Option Strict dies der Wert ist Off, fügen Sie es hinzu.
Object Der Ausdruck enthält einen numerischen Wert, und der andere ist vom Typ String Wenn Option Strict dies der Wert ist On, generieren Sie einen Compilerfehler.

Wenn Option Strict ja Off, konvertieren Sie die String Datei implizit in Double und fügen sie hinzu.

Wenn die String Konvertierung nicht möglich ist, wird eine InvalidCastException Ausnahme ausgelöstDouble.
Object Der Ausdruck enthält eine Zeichenfolge, und der andere ist ein numerischer Datentyp. Wenn Option Strict dies der Wert ist On, generieren Sie einen Compilerfehler.

Wenn Option Strict dies der Wert ist Off, konvertieren Sie die Zeichenfolge Object implizit in Double und fügen sie hinzu.

Wenn die Zeichenfolge Object nicht in konvertiert werden kann, wird eine InvalidCastException Ausnahme ausgelöstDouble.
Object Der Ausdruck enthält eine Zeichenfolge, und der andere ist vom Typ String Wenn Option Strict dies der Wert ist On, generieren Sie einen Compilerfehler.

Ist Option Strict dies Offder Wert, wird implizit in String verkettet und konvertiertObject.

Wenn beide Ausdrücke Ausdrücke sind Object , führt Visual Basic die folgenden Aktionen aus (Option Strict Off nur).

Datentypen von Ausdrücken Aktion nach Compiler
Beide Object Ausdrücke enthalten numerische Werte. Hinzufügen.
Beide Object Ausdrücke sind vom Typ String Verbinden.
Ein Object Ausdruck enthält einen numerischen Wert, und der andere enthält eine Zeichenfolge. Konvertieren Sie die Zeichenfolge Object implizit in Double und fügen Sie sie hinzu.

Wenn die Zeichenfolge Object nicht in einen numerischen Wert konvertiert werden kann, lösen Sie eine InvalidCastException Ausnahme aus.

Wenn ein Object Ausdruck als "Nothing " ausgewertet wird oder DBNullder + Operator ihn als String wert von "" behandelt.

Hinweis

Wenn Sie den + Operator verwenden, können Sie möglicherweise nicht ermitteln, ob eine Addition oder Zeichenfolgenverkettung auftritt. Verwenden Sie den & Operator zur Verkettung, um Mehrdeutigkeit zu vermeiden und selbst dokumentierten Code bereitzustellen.

Überladen

Der + Operator kann überladen werden, was bedeutet, dass eine Klasse oder Struktur ihr Verhalten neu definieren kann, wenn ein Operand den Typ dieser Klasse oder Struktur aufweist. Wenn Ihr Code diesen Operator für eine solche Klasse oder Struktur verwendet, stellen Sie sicher, dass Sie das neu definierte Verhalten verstehen. Weitere Informationen finden Sie unter Operatorprozeduren.

Beispiel

Im folgenden Beispiel wird der + Operator zum Hinzufügen von Zahlen verwendet. Wenn die Operanden beide numerisch sind, berechnet Visual Basic das arithmetische Ergebnis. Das arithmetische Ergebnis stellt die Summe der beiden Operanden dar.

Dim sumNumber As Integer
sumNumber = 2 + 2
sumNumber = 4257.04 + 98112
' The preceding statements set sumNumber to 4 and 102369.

Sie können den + Operator auch verwenden, um Zeichenfolgen zu verketten. Wenn die Operanden beide Zeichenfolgen sind, verkettet Visual Basic sie. Das Verkettungsergebnis stellt eine einzelne Zeichenfolge dar, die aus dem Inhalt der beiden Operanden besteht.

Wenn die Operanden gemischt sind, hängt das Ergebnis von der Einstellung der Option Strict-Anweisung ab. Das folgende Beispiel veranschaulicht das Ergebnis, wenn Option Strict es sich um On.

Option Strict On
Dim var1 As String = "34"
Dim var2 As Integer = 6
Dim concatenatedNumber As Integer = var1 + var2
' The preceding statement generates a COMPILER ERROR. 

Das folgende Beispiel veranschaulicht das Ergebnis, wenn Option Strict es sich um Off.

Option Strict Off
Dim var1 As String = "34"
Dim var2 As Integer = 6
Dim concatenatedNumber As Integer = var1 + var2
' The preceding statement returns 40 after the string in var1 is
' converted to a numeric value. This might be an unexpected result.
' We do not recommend use of Option Strict Off for these operations.

Um Mehrdeutigkeit zu vermeiden, sollten Sie den & Operator anstelle der + Verkettung verwenden.

Siehe auch