[C con Clase] expresión &=
Steven Davidson
srd4121 en njit.edu
Mie Mayo 7 17:51:37 CEST 2008
Hola Pablo,
pabloc en cimne.upc.edu wrote:
> Hola,
>
> Que significado tiene esta expresión ;
>
> bool inside; inside=true;
>
>
> inside &= lambda[j] >= 0
>
> donde lambda es un vector.
>
Estás usando la verdad resultante de la expresión condicional 'lambda[j]
>= 0'. Posteriormente , la veracidad forma parte de una operación AND
con el valor original de 'inside'. El resultado de tal operación es
asignado a 'inside'.
De todas maneras, no aconsejo usar esta sentencia porque el operador &=
que es a nivel de bits no está diseñado para que funcione con valores
booleanos. 'false' se convierte en 0 (cero) y viceversa. Sin embargo,
con 'true', no tenemos un valor específico; sólo sabemos que no es 0 (cero).
Por lo tanto, en la sentencia anterior, no sabemos qué va a pasar. Lo
más seguro es que no tendremos muchos problemas, pero no puedo
asegurarlo para todos los compiladores.
Espero que esto aclare la duda.
Steven
Más información sobre la lista de distribución Cconclase