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
Koncepty
Procedury v jazyce Visual Basic
Sub – procedury (Visual Basic)
Procedury funkcí (Visual Basic)