ВУЗ:
Составители:
Рубрика:
49
int i = (int) 2.99; // i = 2;
В данном случае тип константы 2.99 (по умолчанию тип double) пре-
образуется в тип int с обрезанием дробной части. Или, например, если
описаны пользовательские типы T и P, и для типа T описано явное пре-
образование в тип P, то возможна следующая запись:
T y;
P x = new P();
y = (T) x;
Рис. 3.4. Неявное преобразование встроенных типов.
Следует отметить, что существуют явные преобразования внутри
арифметического типа, но не существует, например, явного преобразо-
вания арифметического типа в тип bool. Например:
double a = 5.0;
int p = (int)a;
//bool b = (bool)a;//ошибка,такого преобразования нет!
В ряде случаев можно задать явным образом требуемое преобра-
зование, используя специальные методы преобразования, определенные
в классе System.Convert, которые обеспечивают преобразование зна-
чения одного типа к значению другого типа (в том числе значения стро-
кового типа к значениям встроенных типов).
3.3.3. Специальные варианты присваивания
В языке C# для двух частных случаев присваивания предложен
специальный синтаксис. Для присваиваний вида "x=x+1", в которых пе-
ременная увеличивается или уменьшается на единицу, используются
специальные операции "++" (операция инкрементации) и "--" (опера-
ция декрементации).
Другой важный частный случай – это краткая запись для присваи-
вания вида:
Страницы
- « первая
- ‹ предыдущая
- …
- 47
- 48
- 49
- 50
- 51
- …
- следующая ›
- последняя »