operator keyword

   
operator keyword Function call syntax for operators

  operator-function-id  ::= operator  op-symbol  operator  op-symbol  < [  template-arg-list  ] >  conversion-function-id  ::= operator  conversion-type-id   conversion-type-id  ::=  type-specifier-seq  [  conversion-declarator  ]  conversion-declarator  ::=  ptr-operator  [  conversion-declarator  ]  ptr-operator  ::= * [  cv-qualifier-seq  ]  &  [::]  nested-name  :: * [  cv-qualifier-seq  ] 

The operator keyword converts an operator symbol into function notation. You can use the operator keyword when invoking an operator or when overloading an operator.

Example

 int x =  operator  +(10, 32); complex<double> c, d; c.  operator  +=(d); operator+=(c, d); // Same as above bigint  operator  *(const bigint& a, const bigint* b); 

Table 12-1 lists the operator symbols ( op-symbol ) that can be overloaded. Alternative tokens (shown in parentheses) are interchangeable with their symbolic equivalents.

Table 12-1. Operator symbols that can be overloaded

delete

/

=

%=

<<=

++

delete [ ]

%

<

^= ( xor_eq )

==

--

new

^ ( xor )

>

&= ( and_eq )

!= ( not_eq )

,

new [ ]

& ( bitand )

+=

= ( or_eq )

<=

->*

+

( bitor )

-=

<<

>=

->

-

~ ( compl )

*=

>>

&& ( and )

( )

*

! ( not )

/=

>>=

( or )

[ ]

See Also

expression , identifier , template , type , Chapter 5

   


C++ in a Nutshell
C++ in a Nutshell
ISBN: 059600298X
EAN: 2147483647
Year: 2005
Pages: 270
Authors: Ray Lischner

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net