& Operator (C# odniesienia)
& operator może funkcjonować jako jednoargumentowy lub operatora dwuargumentowego.
Uwagi
Jednoargumentowy & operator zwraca adres jego operandu (wymaga niebezpieczne kontekst).
Binarne & podmioty gospodarcze są wstępnie zdefiniowane typy zintegrowane i bool.W przypadku typów integralną & Służy do obliczania logiczne logiczną i jego argumenty.Dla bool operandów, & oblicza logicznego i argumentów; wynik jest true tylko wtedy, gdy oba jej argumenty są true.
& Operator ocenia oba operatory, niezależnie od tego, pierwszy z nich jest wartość.Na przykład:
int i = 0;
if (false & ++i == 1)
{
// i is incremented, but the conditional
// expression evaluates to false, so
// this block does not execute.
}
Typy zdefiniowane przez użytkownika może doprowadzić do przeciążenia pliku binarnego & operatora (zobacz operator).Operacje na typy zintegrowane ogólnie są dozwolone na wyliczenie.Gdy operatora dwuargumentowego jest przeciążony, odpowiedni operator przypisania, jeśli w ogóle, jest również niejawnie przeciążone.
Przykład
class BitwiseAnd
{
static void Main()
{
// The following two statements perform logical ANDs.
Console.WriteLine(true & false);
Console.WriteLine(true & true);
// The following line performs a bitwise AND of F8 (1111 1000) and
// 3F (0011 1111).
// 1111 1000
// 0011 1111
// ---------
// 0011 1000 or 38
Console.WriteLine("0x{0:x}", 0xf8 & 0x3f);
}
}
// Output:
// False
// True
// 0x38