/ — Operator (Visual Basic)

Dzieli dwie liczby i zwraca wynik zmiennoprzecinkowa.

Składnia

expression1 / expression2  

generatora

expression1
Wymagany. Dowolne wyrażenie liczbowe.

expression2
Wymagany. Dowolne wyrażenie liczbowe.

Obsługiwane typy

Wszystkie typy liczbowe, w tym typy niepodpisane i zmiennoprzecinkowe oraz Decimal.

Result

Wynik jest pełnym ilorazem podzielonym expression1 przez expression2, w tym wszelkie pozostałe.

Operator \ (Visual Basic) zwraca iloraz liczby całkowitej, co powoduje spadek pozostałej liczby.

Uwagi

Typ danych wyniku zależy od typów operandów. W poniższej tabeli przedstawiono sposób określania typu danych wyniku.

Typy danych operandu Typ danych wyników
Oba wyrażenia to całkowite typy danych (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) Double
Jedno wyrażenie jest pojedynczym typem danych, a drugie nie jest podwójne Single
Jedno wyrażenie jest typem danych dziesiętnych, a drugi nie jest pojedynczym lub podwójnym Decimal
Wyrażenie jest podwójnym typem danych Double

Przed wykonaniem dzielenia wszystkie wyrażenia liczbowe całkowite są rozszerzane na Double. Jeśli przypiszesz wynik do typu danych całkowitych, program Visual Basic spróbuje przekonwertować wynik z Double na ten typ. Może to zgłosić wyjątek, jeśli wynik nie pasuje do tego typu. W szczególności zobacz "Próba dzielenia według zera" na tej stronie Pomocy.

Jeśli expression1 wartość nic nie zostanie obliczona lub expression2 obliczona, jest traktowana jako zero.

Podjęto próbę dzielenia według zera

Jeśli expression2 ma wartość zero, / operator zachowuje się inaczej dla różnych typów danych operandu. W poniższej tabeli przedstawiono możliwe zachowania.

Typy danych operandu Zachowanie, jeśli expression2 ma wartość zero
Zmiennoprzecinkowy (Single lub Double) Zwraca nieskończoność (PositiveInfinity lub ), lub NaN (nie liczbę), jeśli expression1NegativeInfinityrównież jest równa zero
Decimal Zgłasza DivideByZeroException
Całkowita (podpisana lub niepodpisane) Podjęto próbę konwersji z powrotem do typu całkowitego, OverflowException ponieważ typy całkowite nie mogą akceptować PositiveInfinity, NegativeInfinitylub NaN

Uwaga

Operator / może być przeciążony, co oznacza, że klasa lub struktura może ponownie zdefiniować jego zachowanie, gdy operand ma typ tej klasy lub struktury. Jeśli kod używa tego operatora w takiej klasie lub strukturze, upewnij się, że rozumiesz jego ponownie zdefiniowane zachowanie. Aby uzyskać więcej informacji, zobacz Procedury operatorów.

Przykład

W tym przykładzie / operator używa operatora do wykonywania dzielenia zmiennoprzecinkowego. Wynik jest ilorazem dwóch operandów.

Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3

Wyrażenia w poprzednim przykładzie zwracają wartości 2,5 i 3,3333333. Należy pamiętać, że wynik jest zawsze zmiennoprzecinkowa (Double), mimo że oba operandy są stałymi liczbami całkowitymi.

Zobacz też