Next: Precedence of Objects, Previous: Function Overloading, Up: Overloading Objects [Contents][Index]

The following table shows, for each built-in numerical operation, the corresponding function name to use when providing an overloaded method for a user class.

Operation | Method | Description | ||
---|---|---|---|---|

a + b | plus (a, b) | Binary addition | ||

a - b | minus (a, b) | Binary subtraction operator | ||

+ a | uplus (a) | Unary addition operator | ||

- a | uminus (a) | Unary subtraction operator | ||

a .* b | times (a, b) | Element-wise multiplication operator | ||

a * b | mtimes (a, b) | Matrix multiplication operator | ||

a ./ b | rdivide (a, b) | Element-wise right division operator | ||

a / b | mrdivide (a, b) | Matrix right division operator | ||

a .\ b | ldivide (a, b) | Element-wise left division operator | ||

a \ b | mldivide (a, b) | Matrix left division operator | ||

a .^ b | power (a, b) | Element-wise power operator | ||

a ^ b | mpower (a, b) | Matrix power operator | ||

a < b | lt (a, b) | Less than operator | ||

a <= b | le (a, b) | Less than or equal to operator | ||

a > b | gt (a, b) | Greater than operator | ||

a >= b | ge (a, b) | Greater than or equal to operator | ||

a == b | eq (a, b) | Equal to operator | ||

a != b | ne (a, b) | Not equal to operator | ||

a & b | and (a, b) | Logical and operator | ||

a | b | or (a, b) | Logical or operator | ||

! b | not (a) | Logical not operator | ||

a’ | ctranspose (a) | Complex conjugate transpose operator | ||

a.’ | transpose (a) | Transpose operator | ||

a : b | colon (a, b) | Two element range operator | ||

a : b : c | colon (a, b, c) | Three element range operator | ||

[a, b] | horzcat (a, b) | Horizontal concatenation operator | ||

[a; b] | vertcat (a, b) | Vertical concatenation operator | ||

a(s_1, …, s_n) | subsref (a, s) | Subscripted reference | ||

a(s_1, …, s_n) = b | subsasgn (a, s, b) | Subscripted assignment | ||

b (a) | subsindex (a) | Convert to zero-based index | ||

display | display (a) | Commandline display function |

An example `mtimes`

method for our polynomial class might look like

function y = mtimes (a, b) y = polynomial (conv (double (a), double (b))); endfunction