Procedury operátoru (Visual Basic)

Procedury operátor je řada Visual Basic příkazy, které definují chování standardní operátor (například *, <>, nebo And) na třídy nebo struktury, které jste definovali.To se také nazývá přetížení operátor.

Při definování postupů operátor

Po definování třídy nebo struktury můžete deklarovat proměnné typu třídy nebo struktury.Někdy tyto proměnné musí zúčastnit operace jako součást výrazu.Chcete-li to provést, musí být operand operátoru.

Visual Basicoperátory definuje pouze na jeho základní datové typy.Můžete definovat chování při jeden operátor nebo jsou oba operandy typu třídy nebo struktury.

Další informace naleznete v tématu Operator – příkaz.

Typy postup operátor

Procedury operátor může být jeden z následujících typů:

  • Definice Unární operátor, pokud je argument typu třídy nebo struktury.

  • Definice binární operátor, kde je alespoň jeden z argumentů typu třídy nebo struktury.

  • Definice převodu operátora, kde je argument typu třídy nebo struktury.

  • Definice převodu operátor, který vrací typ třídy nebo struktury.

Operátory převodu jsou vždy Unární a vždy použít CType jako operátor definujete.

Syntaxe deklarace

Syntaxe pro deklarování proceduru operátor je následující:

Public Shared [Widening | Narrowing] Operatoroperatorsymbol (operand1 [, operand2]) As datatype

' Statements of the operator procedure.

End Operator

Použití Widening nebo Narrowing klíčové slovo pouze na typ konverze operátoru.Symbol operátor je vždy CType – funkce (Visual Basic) pro pomocí operátoru typ převodu.

Deklarovat definovat binární operátor dva operandy a deklarovat jeden operand definovat Unární operátor, včetně pomocí operátoru typ převodu.Všechny operandy musí být deklarován ByVal.

Deklarovat operandem stejným způsobem deklarovat parametry pro Sub – procedury (Visual Basic).

Typ dat

Protože operátor definování třídy nebo struktury, které jste definovali, alespoň jeden z operandů musí být datový typ třídy nebo struktury.Pro typ převodu hospodářský subjekt operand nebo návratový typ musí být datový typ třídy nebo struktury.

Více podrobností naleznete v tématu Operator – příkaz.

Syntaxe volání

Procedury operátor je vyvolat implicitně pomocí symbolu operátor ve výrazu.Operandy dodávek stejným způsobem pro předdefinované operátory.

Syntaxe volání implicitní operátor řízení je takto:

Dim testStruct As structurename

Dim testNewStruct As structurename = testStruct operatorsymbol 10

Obrázek prohlášení a volání

Následující strukturu ukládá jako náležitostech nejvyšších a nejnižší hodnota 128bitové číslo se znaménkem.Definuje + operátor přidat dvě veryLong hodnoty a generovat výsledném veryLong hodnotu.

Public Structure veryLong
    Dim highOrder As Long 
    Dim lowOrder As Long 
    Public Shared Operator +(ByVal v As veryLong, 
                             ByVal w As veryLong) As veryLong
        Dim sum As New veryLong
        sum = v
        Try
            sum.lowOrder += w.lowOrder
        Catch ex As System.OverflowException
            sum.lowOrder -= (Long.MaxValue - w.lowOrder + 1)
            sum.highOrder += 1
        End Try
        sum.highOrder += w.highOrder
        Return sum
    End Operator 
End Structure

Následující příklad ukazuje typické volání + operátor definované na veryLong.

Dim v1, v2, v3 As veryLong
v1.highOrder = 1
v1.lowOrder = Long.MaxValue
v2.highOrder = 0
v2.lowOrder = 4
v3 = v1 + v2

Další informace a příklady viz Operátor přetížení Visual Basic 2005.

Viz také

Úkoly

Postupy: Definice operátora (Visual Basic)

Postupy: Definice operátora převodu (Visual Basic)

Postupy: Volání procedury operátora (Visual Basic)

Postupy: Použití třídy, která definuje operátory (Visual Basic).

Referenční dokumentace

Operator – příkaz

Koncepty

Procedury v jazyce Visual Basic

Sub – procedury (Visual Basic)

Procedury funkcí (Visual Basic)

Procedury vlastnosti (Visual Basic)

Parametry a argumenty procedury (Visual Basic)