not - ¿Por qué no hay operadores ||=o &&=en C#?
if operators c# (1)
¿Por qué los operadores lógicos se quedan afuera? ¿Hay una buena razón técnica por la que es difícil?
Ellos no lo hicieron . Puedes hacer &=
o |=
o ^=
si quieres.
bool b1 = false;
bool b2 = true;
b1 |= b2; // means b1 = b1 | b2
El ||
y &&
operadores no tienen una forma compuesta porque, francamente, son un poco tontos. ¿Bajo qué circunstancias quieres decir
b1 ||= b2;
b1 &&= b2;
de modo que el lado derecho no se evalúa si el lado izquierdo no cambia? Parece que solo unas pocas personas usarían esta característica, entonces, ¿por qué ponerla?
Para obtener más información sobre los operadores compuestos, vea mi artículo serio aquí:
http://blogs.msdn.com/b/ericlippert/archive/2011/03/29/compound-assignment-part-one.aspx
y el siguiente artículo de April-Fools aquí:
Tenemos operadores de asignación equivalentes para todos los operadores lógicos, operadores Shift, operadores aditivos y todos los operadores multiplicativos.
¿Por qué los operadores lógicos se quedan afuera? ¿Hay una buena razón técnica por la que es difícil?