...
Table of Content Zone | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AssignmentAssignment expressions include the following operators: %=Mod-equals operator. For example:
&=Bitwise-and-equals operator. For example:
*=Multiply-equals operator. For example:
++Increment operator. For example:
+=Plus-equals operator. For example:
--Decrement operator. For example:
-=Minus-equals operator. For example:
/=Divide-equals operator. For example:
<<=Left-shift-equals operator. For example:
=Assignment operator. For example:
>>=Right-shift-equals operator. For example:
^=Bitwise-xor-equals operator. For example:
|=Bitwise-or-equals operator. For example:
BitwiseThe following bitwise operators are included: &Bitwise 'AND' operator. For example:
^Bitwise 'XOR' operator. For example:
|Bitwise 'OR' operator. For example:
~Bitwise 'NOT' operator. For example:
ComparisonThe following comparison operators are included: !='Not-equal' operator. For example:
<'Less than' operator. For example:
<='Less than or equals' operator. For example:
=='Equality' operator. For example:
>'Greater than' operator. For example:
>='Greater than or equals' operator. For example:
LogicalThe following logical operator expressions are included: !Logical 'NOT' operator. For example:
&&Logical 'AND' operator. For example:
||Logical 'OR' expression. For example:
MiscellaneousThe following miscellaneous expressions are included: ->Dereference operator. For example:
|
Code Block |
---|
class Foo { public: void func(); }; typedef void(Foo::*mpf)(); void bar(Foo *f) { mpf ampf = &Foo::func; (f->*ampf)(); // Arrow-star operator "->*" } |
.
Dot operator. For example:
Code Block |
---|
class A { public: int foo; } [...] a.foo = 1; //Dot operator. |
::
Double colon operator. For example:
Code Block |
---|
class A { int foo(); }; int A::foo() { // Double colon operator (A::foo()) return 1; } |
?
Ternary operator. For example:
Code Block |
---|
bool func(int x) { return x ? true : false; // Ternary operator "?" } |
.*
Pointer-to-member operator. For example:
Code Block |
---|
class A { public: void foo(); }; typedef void (A::*PtrToMember)(); void bar(A& a, PtrToMember ptr) { (a.*ptr)(); // ".*" operator } |
...
Ellipsis. For example:
void foo(...); /* ellipsis */
Numerical
The following numerical expressions are included:
%
Mod operator. For example:
Code Block |
---|
int j = 11; int i = j % 2; //Mod operator (j % 2) |
*
Asterisk operator. For example:
Code Block |
---|
int plus1 = 2 * 2; //Asterisk operator (multiplication) int *plus2 = &plus1; //Asterisk operator (pointer type) |
+
Plus operator. For example:
Code Block |
---|
int j = 2; int plus1 = 1 + j; //Plus operator (addition) int plus2 = +1; //Plus operator (meaningless) |
-
Minus operator. For example:
Code Block |
---|
int j = 2; int minus1 = 1 - j; //Minus operator (substraction) int minus2 = -1; //Minus operator (negation) |
/
Division operator. For example:
Code Block |
---|
float f = 3; float r = f / 2; //Division operator |
<<
Binary shift-left operator. For example:
Code Block |
---|
int i = 2; int j = i << 1; //shift-left operator (i << 1) |
>>
Binary shift-right operator. For example:
Code Block |
---|
int i = 2; int j = i >> 1; //shift-right operator (i >> 1) |
...