Functions and operators perform similar actions. For such reason, their definitions are nearly identical. There is nonetheless a significant difference in their intended use, one that goes beyond such minor difference as number of parameters and the character set allowed for names.
Operators are envisaged as lighter versions of functions. They trade flexibility and expressiveness for faster evaluation.
See Prefix Unary Operators.
See Infix Binary Operators.
Over operators, functions have a large set of features, greatly extending their usefulness. Such features include:
See Implicit Conversions.
See Function Pointers.
The lackings in the expressiveness of operators may be covered to some extend by the operator to function replacement feature of the expression evaluator.
See Expressive Operators.