Основы объектно-ориентированного программирования на языке C# book | Page 73

5.2 Простi типи using System; class Program { static void Main() { int x, y = 5; bool z = true; char a = ’A’; float b; var c = 0.3; int u = y; // значення y вже визначене, його можна // використовувати в якостi початкового для u var v = c; // тип та значення c вже визначенi, тому значення c // можна використовувати в якостi початкового для v x = 1; Console.WriteLine(x); Console.WriteLine(a); } } При наданнi початкового значення змiнним i присвоєннi ı̈м значе- ння або використанi ı̈х значення можна застосовувати так званi явнi i неявнi перетворення типiв (англ. implicit and explicit conversions). Перетворення дозволяє трактувати значення виразу одного типу да- них як значення iншого типу. Деякi перетворення мiж типами даних передбаченi мовою, а iншi перетворення можуть визначатися програ- мiстом. Наприклад, мовою C# передбачено неявне (автоматичне) перетво- рення значення типу int на значення типу long (дiапазон якого бiль- ший за дiапазон значень типу int ), коли значення типу int викори- стовується у тому мiсцi програми, де потрiбне значення типу long , наприклад, при присвоєннi значення змiннiй типу long : int a = 5; long x; x = a; // присвоєння коректне, вiдбувається неявне перетворення // значення типу int на значення типу long i збереження його в х Також, можна записати int a = 5; long x = a; long y = 5; Зворотне перетворення (з long в int ) також передбачене, але має бути явним, що записується як: long a = 5; int x; x = (int)a; // явне перетворення long в int Console.WriteLine(x); // результат коректний: x має значення 5 Бiльш загально, щоб явно перетворити значення X типу A на зна- чення типу B, необхiдно застосувати до нього операцiю явного пере- творення до типу B, що має вигляд: (B )X. 73