Condividi tramite


Operatori di assegnazione

expression assignment-operator expression 
assignment-operator : one of
   =   *=   /=   %=   +=   –=   <<=   >>=   &=   ^=   |=

Note

Gli operatori di assegnamento consentono di memorizzare un valore nell'oggetto definito dall'operando di sinistra. Esistono due tipi di operazioni di assegnamento: assegnamento semplice, in cui il valore del secondo operando è memorizzato nell'oggetto specificato dal primo operando e assegnazione composta, dove un'operazione aritmetica, uno shift, o un'operazione bit a bit viene eseguita prima di memorizzare il risultato. Tutti gli operatori di assegnamento nella tabella seguente ad eccezione dell'operatore = sono operatori di assegnamento composti.

Operatori di assegnazione

Operatore

Significato

=

Memorizza il valore del secondo operando nell'oggetto specificato dal primo operando (semplice assegnamento).

*=

Moltiplica il valore del primo operando per il valore del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

/=

Divide il valore del primo operando per il valore del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

%=

Calcola il modulo del primo operando specificato con il valore del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

+=

Somma il valore del secondo operando al valore del primo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

–=

Sottrae il valore del secondo operando dal valore del primo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

<<=

Esegue uno shift a sinistra del valore del primo operando di un numero di bit specificati dal valore del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

>>=

Esegue uno shift a destra del valore del primo operando di un numero di bit specificati dal valore del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

&=

Ottiene l'AND bit a bit del primo e del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

^=

Ottiene l'OR esclusivo bit a bit del primo e del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

|=

Ottiene l'OR inclusivo bit a bit del primo e del secondo operando; memorizza il risultato nell'oggetto specificato dal primo operando.

Parole chiave per operatori

Tre degli operatori di assegnamento composti hanno testo equivalente. seguenti:

Operatore

Equivalente

&=

and_eq

|=

or_eq

^=

xor_eq

Esistono due modi per accedere a queste parole chiave dell'operatore nei programmi: includere il file di intestazione iso646.h, o compilando con l'opzione del compilatore /Za (disabilita le estensioni del linguaggio).

Esempio

// expre_Assignment_Operators.cpp
// compile with: /EHsc
// Demonstrate assignment operators
#include <iostream>
using namespace std;
int main() {
   int a = 3, b = 6, c = 10, d = 0xAAAA, e = 0x5555;

   a += b;      // a is 9
   b %= a;      // b is 6
   c >>= 1;      // c is 5
   d |= e;      // Bitwise--d is 0xFFFF 

   cout  << "a = 3, b = 6, c = 10, d = 0xAAAA, e = 0x5555" << endl
         << "a += b yields " << a << endl
         << "b %= a yields " << b << endl
         << "c >>= 1 yields " << c << endl
         << "d |= e yields " << hex << d << endl;
}

Vedere anche

Riferimenti

Espressioni con operatori binari

Operatori C++

Operatori C++, precedenza e associazione

Risultato degli operatori di assegnazione

Assegnazione semplice (C++)

Assegnazione composta

Operatori di assegnazione C