Operátory přiřazení
expression assignment-operator expression
assignment-operator : one of
= *= /= %= += –= <<= >>= &= ^= |=
Poznámky
Operátory přiřazení ukládají hodnotu v objektu určeném levým operandem.Existují dva typy operace přiřazení: jednoduché přiřazení, ve kterém je hodnota druhého operandu uložena v objektu určeném prvním operandem, a složené přiřazení, ve kterém se aritmetická operace, operace posunu nebo bitová operace provádí před uložením výsledku.Všechny operátory přiřazení v následující tabulce, s výjimkou operátoru =, jsou operátory složeného přiřazení.
Operátory přiřazení
Operátor |
Význam |
---|---|
= |
Uloží hodnotu druhého operandu v objektu určeném prvním operandem (jednoduché přiřazení). |
*= |
Vynásobí hodnotu prvního operandu hodnotou druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
/= |
Vydělí hodnotu prvního operandu hodnotou druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
%= |
Vezme numerický zbytek prvního operandu určený hodnotou druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
+= |
Přidá hodnotu druhého operandu k hodnotě prvního operandu a uloží výsledek v objektu určeném prvním operandem. |
–= |
Odečte hodnotu druhého operandu od hodnoty prvního operandu a uloží výsledek v objektu určeném prvním operandem. |
<<= |
Posune hodnotu prvního operandu vlevo o počet bitů určený hodnotou druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
>>= |
Posune hodnotu prvního operandu vpravo o počet bitů určený hodnotou druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
&= |
Získá bitový AND prvního a druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
^= |
Získá bitový exkluzivní OR prvního a druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
|= |
Získá bitový OR prvního a druhého operandu a uloží výsledek v objektu určeném prvním operandem. |
Klíčová slova operátorů
Tři operátory složeného přiřazení mají textové ekvivalenty.Možnosti jsou následující:
Operátor |
Ekvivalent |
---|---|
&= |
and_eq |
|= |
or_eq |
^= |
xor_eq |
Existují dva způsoby přístupu k těmto klíčovým slovům operátorů v programech: zahrnutím hlavičkového souboru iso646.h nebo kompilací s možností kompilátoru /Za (zakáže rozšíření jazyka).
Příklad
// 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;
}