Ключове слово operator дозволяє визначити чи перевизначити оператор для класу або структури. Декларація оператора може приймати декілька форм в залежності від типу оператора:

Синтаксис:
//якщо оператор унарний
public static тип-результату operator унарний-оператор( тип-операнду операнд )
//якщо оператор бінарний
public static тип-результату operator бінарний-оператор(
   тип-операнда операнд,
   тип-операнда2 операнд2
)

//якщо це приведення типів
public static implicit operator тип-результату( тип-операнду операнд )
public static explicit operator тип-результату( тип-операнду операнд )

де:

  • тип-результату - тип, який буде повертатися після виконання оператору
  • унарний-оператор - один із: + -  ! ~ ++ — true false
  • бінарний-оператор- один із: + - * /  % & | ^ << >> ==  != > < >= <=
  • тип-операнду - тип операнда, який є параметром для оператора (для оператора приведення типів це тип змінної, яка буде приводитись до вказаного типу за допомогою цього оператора).
  • операнд - ім'я параметру, який відповідає конкретному операнду.
Ключові слова C#
abstract as base bool break
byte case catch char checked
class const continue decimal default
delegate do double else enum
event explicit extern false finally
fixed float for foreach
goto if implicit in int
interface internal is lock long
namespace new null object operator
out override params private protected
public readonly ref return sbyte
sealed short sizeof stackalloc
static string struct switch this
throw true try typeof uint
ulong unchecked unsafe ushort using
var virtual void volatile while
Спеціальні
add alias get global partial
remove set value where yield