Внимание. Арифметические операции не определены для более коротких, чем int, типов

Арифметические операции не определены для более коротких, чем int, типов. Это означает, что если в выражении участвуют только величины типов sbyte, byte, short и ushort, перед выполнением операции они будут преобразованы в int. Таким образом, результат любой арифметической операции имеет тип не менее int.


Правила неявного преобразования иллюстрирует рис. 3.1. Если один из операндов имеет тип, изображенный на более низком уровне, чем другой, то он приво­дится к типу второго операнда при наличии пути между ними. Если пути нет, возникает ошибка компиляции. Если путей несколько, выбирается наиболее короткий, не содержащий пунктирных линий. Преобразование выполняется не по­следовательно, а непосредствен

Рис. 3.1. Неявные арифметические преобразования типов

           
   
     
 


Преобразование более коротких, чем int, типов выполняется при присваивании. Обратите внимание на то, что неявного преобразования из float и double в decimal не существует.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: