programming languages - design principles,
implementation constructs
c++
-
abstraction mechanisms: classes and operator overloading
-
class/object construction - operator overloading
-
binary and unary operators -
- binary operators - [ +, +=, == ]
- a binary operator can be defined either a member function
taking one argument or a friend function taking two arguments.
- for any binary operator @, aa@bb can be interpreted as
either aa.operator@(bb) or operator@(aa,bb).
- if both are defined, aa@bb is an error.
- unary operators - [ -, &, [] ]
- a unary operator, whether prefix or postfix, can be defined
either a member function taking no argument or a friend function
taking one argument.
- for any unary operator @, both aa@ and @aa can be interpreted as
either aa.operator@() or operator@(aa).
- if both are defined, aa@ and @aa are errors.
<<
|
>>
1 |
basic facilities
<<
3
>>
class derivation
| 5
| 6
| 7
| 8