| **Navigation:**  [[clarion.htm|Clarion.Net (Clarion#)]] > [[clarion net language reference.htm|Clarion# Language Extensions]] > Operators >====== New, modified, and unsupported Expression Operators. ====== | [[variable declaration outside of the data section.htm|{{btn_prev_n.gif|Previous page}}]][[clarion net language reference.htm|{{btn_home_n.gif|Return to chapter overview}}]][[comparison operators.htm|{{btn_next_n.gif|Next page}}]] | | || {{newcnet.jpg|NewCNet.jpg}} This topic review several expression operators that are new, modified, and no longer supported in the Clarion# language. **+= (addition assignment)** **-= (subtraction assignment)** Those familiar with the Clarion language may recognize these operators solely as a mathematical operator assignment addition/subtraction shortcut. However, in Clarion#, is usage also applies to event registration, and uses the following convention: If the left operand of a += or -= operator is classified as an event access, then the expression is evaluated as follows: ·The instance expression, if any, of the event access is evaluated. ·The right operand of the += or -= operator is evaluated, and, if required, converted to the type of the left operand through an implicit conversion ·An event accessor of the event is invoked, with the argument list consisting of the right operand, after evaluation and, if necessary, conversion. If the operator was +=, the add accessor is invoked. If the operator was -=, the remove accessor is invoked. **:=: Deep Assignments** In Clarion#, deep assignment statements are no longer supported. {{notebox.jpg|NoteBox.jpg}} Clarion# supports using overloaded operators declared in an external assembly, but not their declaration. The set of overloaded operators supported are: **Unary operators:** +, -, NOT (! In C#) **Binary operators:** +,-,*,/,%,=,<;>(!= in C#), >=,<;=