/ – operátor (Visual Basic)
Vydělí dvě čísla a vrátí výsledek s plovoucí desetinnou čárkou.
Syntax
expression1 / expression2
Součásti
expression1
Povinná hodnota. Libovolný číselný výraz
expression2
Povinná hodnota. Libovolný číselný výraz
Podporované typy
Všechny číselné typy, včetně typů bez znaménka a s plovoucí desetinnou čárkou a Decimal .
Výsledek
Výsledkem je úplný podíl dělené hodnoty expression1 expression2 , včetně všech zbývajících.
Operátor \ (Visual Basic) vrátí celočíselný podíl, který zbytek zahodí.
Poznámky
Datový typ výsledku závisí na typech operandů. Následující tabulka ukazuje, jak se určuje datový typ výsledku.
| Operand – datové typy | Datový typ výsledku |
|---|---|
| Oba výrazy jsou integrální datové typy(SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong). | Double |
| Jeden výraz je datový typ Jeden a druhý není Double. | Single |
| Jeden výraz je desítkový datový typ a druhý není jeden nebo dvojitý. | Decimal |
| Jeden z výrazů je datový typ Double. | Double |
Před dělením jsou všechny integrální číselné výrazy rozšířeny na Double . Pokud výsledek přiřadíte celočíselného datového typu, Visual Basic pokusí převést výsledek Double z na tento typ. To může vyvolat výjimku, pokud se výsledek nevejde do tohoto typu. Konkrétně se podívejte na část "Pokus o dělení nulou" na této stránce nápovědy.
Pokud expression1 nebo expression2 se vyhodnotí jako Nothing, je považován za nula.
Pokus o dělení nulou
expression2Je-li vyhodnocen na nulu, / operátor se chová odlišně pro různé typy dat operandu. V následující tabulce jsou uvedená možná chování.
| Operand – datové typy | Chování, pokud expression2 je nula |
|---|---|
S plovoucí desetinnou čárkou ( Single nebo Double ) |
Vrátí nekonečno ( PositiveInfinity nebo NegativeInfinity ) nebo NaN (nikoli číslo), pokud expression1 je také nula. |
Decimal |
Vyvolá DivideByZeroException |
| Integrální (se znaménkem nebo bez znaménka) | Pokus o převod zpět na celočíselné typy vyvolá OverflowException výjimku, protože celočíselné typy nemohou přijmout PositiveInfinity , NegativeInfinity nebo NaN |
Poznámka
Operátor / může být přetížen, což znamená, že třída nebo struktura může předefinovat své chování, pokud má operand typ této třídy nebo struktury. Pokud váš kód používá tento operátor u takové třídy nebo struktury, ujistěte se, že rozumíte jejímu předdefinované chování. Další informace najdete v tématu Procedury operátora.
Příklad
Tento příklad používá operátor / k dělení s plovoucí desetinnou čárkou. Výsledkem je podíl dvou operandů.
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
Výrazy v předchozím příkladu vrací hodnoty 2,5 a 3,333333. Všimněte si, že výsledek je vždy s plovoucí desetinnou čárkou ( ), i Double když jsou oba operandy celočíselné konstanty.