示例#1
0
 // Перегрузить бинарный оператор + для сложения
 // значения типа int и объекта типа Nybble.
 public static Nybble operator +(int op1, Nybble op2)
 {
     Nybble result = new Nybble();
     result.val = op1 + op2.val;
     result.val = result.val & 0xF; // сохранить 4 младших разряда
     return result;
 }
示例#2
0
 // Перегрузить оператор ++.
 public static Nybble operator ++(Nybble op)
 {
     Nybble result = new Nybble();
     result.val = op.val + 1;
     result.val = result.val & 0xF; // сохранить 4 младших разряда
     return result;
 }
示例#3
0
        static void Main()
        {
            Nybble a = new Nybble(1);
            Nybble b = new Nybble(10);
            Nybble c = new Nybble();

            int t;
            Console.WriteLine("a: " + (int)a);
            Console.WriteLine("b: " + (int)b);

            // Использовать тип Nybble в условном операторе if.
            if (a < b) Console.WriteLine("а меньше b\n");

            // Сложить два объекта типа Nybble.
            c = a + b;
            Console.WriteLine("с после операции с = а + b: " + (int)c );

            // Сложить значение типа int с объектом типа Nybble.
            a += 5;
            Console.WriteLine("а после операции а += 5: " + (int) a);
            Console.WriteLine();

            // Использовать тип Nybble в выражении типа int.
            t = a * 2 + 3;
            Console.WriteLine("Результат вычисления выражения а * 2 + 3: " + t);
            Console.WriteLine();

            // Продемонстрировать присваивание значения типа int и переполнение.
            a = 19;
            Console.WriteLine("Результат присваивания а = 19: " + (int) a);
            Console.WriteLine();

            // Использовать тип Nybble для управления циклом.
            Console.WriteLine("Управление циклом for " +
            "с помощью объекта типа Nybble.");
            for (a = 0; a < 10; a++)
                Console.Write((int) a + " ");
            Console.WriteLine();

            Console.ReadKey();
        }