Expressions with Unary Operators
Unary operators act on only one operand in an expression. The unary operators are as follows:
These operators have right-to-left associativity. Unary expressions generally involve syntax that precedes a postfix or primary expression.
The following are the possible forms of unary expressions.
postfix-expression
++unary-expression
––unary-expression
unary-operatorcast-expression
sizeofunary-expression
sizeof(type-name)
decltype(expression)
allocation-expression
deallocation-expression
Any postfix-expression is considered a unary-expression, and because any primary expression is considered a postfix-expression, any primary expressions is considered a unary-expression also. For more information, see Postfix Expressions and Primary Expressions.
A unary-operator consists of one or more of the following symbols: * &+–!~
The cast-expression is a unary expression with an optional cast to change the type. For more information see Cast Operator: ().
An expression can be any expression. For more information, see Expressions (C++).
The allocation-expression refers to the new operator. The deallocation-expression refers to the delete operator. For more information, see the links earlier in this topic.