Оператор ~ (справочник по C#)
Оператор ~ выполняет операцию поразрядного дополнения операнда, заключающуюся в инвертировании каждого бита. Операторы поразрядного дополнения предопределены для типов int, uint, long и ulong.
Примечание
Символ ~ также используется для объявления деструкторов.Дополнительные сведения см. в разделе Деструкторы (Руководство по программированию в C#).
Заметки
Определенные пользователем типы могут перегружать оператор ~ . Дополнительные сведения см. оператор. Операции над целыми типами обычно разрешены в перечислениях.
Пример
class BWC
{
static void Main()
{
int[] values = { 0, 0x111, 0xfffff, 0x8888, 0x22000022 };
foreach (int v in values)
{
Console.WriteLine("~0x{0:x8} = 0x{1:x8}", v, ~v);
}
}
}
/*
Output:
~0x00000000 = 0xffffffff
~0x00000111 = 0xfffffeee
~0x000fffff = 0xfff00000
~0x00008888 = 0xffff7777
~0x22000022 = 0xddffffdd
*/
См. также
Ссылки
Деструкторы (Руководство по программированию в C#)
Основные понятия
Руководство по программированию на C#