Помощь в написании студенческих работ
Антистрессовый сервис

Операции. 
Объектно-ориентированное программирование

РефератПомощь в написанииУзнать стоимостьмоей работы

Можно заключать выражения в скобки для принудительного вычисления некоторых частей выражения раньше других. Например, выражение 2 + 3 * 2 в обычном случае будет иметь значение 8, поскольку операции умножения выполняются раньше операций сложения, а результатом вычисления выражения (2 + 3) * 2 будет число 10, поскольку компилятор C# получит данные о том, что операцию сложения (+) нужно вычислить… Читать ещё >

Операции. Объектно-ориентированное программирование (реферат, курсовая, диплом, контрольная)

Переменные и константы могут объединяться с помощью операций. В языке CU операция — это термин или символ, получающий на вход одно или несколько операндов (переменных или констант) или выражений (переменных или констант, связанных между собой знаками операций) и возвращающий значение некоторого типа (табл. 3.2).

Операции, получающие на вход один операнд, например операция приращения ++, или new, называются унарными операциями. Операции, получающие на вход два операнда, например арифметические операции (+, -, *, /), называются бинарными операциями. И только одна операция языка CU получает на вход три операнда и называется тернарной операцией — это условная операция (?:).

Таблица 3.2.

Описание операций языка C#

Основные операции

Выражение

Описание

x.y.

доступ к элементам типа.

f (x).

вызов метода и делегата.

а[х].

доступ к массиву и индексатору.

Х++.

постфиксное приращение.

Х-;

постфиксное уменьшение.

new Т (…).

создание объекта класса или делегата.

new Т (…) {…}.

создание объекта с инициализацией.

New Т[…].

создание массива (см. разд. 3.5).

typeof (T).

получение объекта System. Туре для Т.

delegate {}.

анонимная функция (анонимный метод).

Унарные операции

Выражение

Описание

— X.

отрицательное значение.

!х.

логическое отрицание.

~х.

поразрядное отрицание.

++Х.

префиксное приращение.

— X.

префиксное уменьшение.

(Т)х.

явное преобразование х в тип Т (кастинг).

Мультипликативные операции

Аддитивные операции

Выражение

Описание

Выражение

Описание

*.

умножение.

х + у.

сложение, объединение строк.

деление.

х-У.

вычитание.

%.

остаток.

Операции сдвига

Операции равенства

Выражение

Описание

Выражение

Описание

х «у.

сдвиг влево.

Операции. Объектно-ориентированное программирование.

равно.

х «у.

сдвиг вправо.

х ≠ у.

не равно.

Операции отношения и типа

Выражение

Описание

х < у.

меньше.

х > у.

больше.

х <= у.

меньше или равно.

х >= у.

больше или равно.

х is Т.

возвращает значение true, если х относится к типу Т, в противном случае возвращает значение false.

х as Т.

возвращает х типа Т или нулевое значение, если х не относится к типу Т.

Операции назначении и анонимные операции

Выражение

Описание

присваивание.

х ор= у.

составные операции присвоения:

+=, -=, *= /= %= &=,≠, ≠, «=, «=.

Логические, условные операции и Null-операции.

Категория

Выражение

Описание

Логическое.

AND.

х & у.

целочисленное поразрядное AND, логическое AND.

Логическое исключающее.

XOR.

х л у.

целочисленное поразрядное исключающее XOR, логическое исключающее XOR.

Логическое OR.

х|y.

целочисленное поразрядное OR, логическое OR.

Условное AND.

X && у.

вычисляет у только если х имеет значение true.

Условное OR.

X || у.

вычисляет у только если х имеет значение false.

Объединение нулей.

х??у.

равно у, если х = null, в противном случае равно X.

Условное.

х? y: z.

равно у, если х имеет значение true: равно z, если х имеет значение false.

Когда выражение содержит несколько разных операций, то порядок выполнения определяется на основе приоритетов операций, а если операции одинаковые, то порядок их выполнения задается их ассоциативностью (табл. 3.3).

Вычисление выражений начинается с выполнения операций высшего приоритета. Первым делом вычисляются выражения в круглых скобках — (ехрг), определяются значения полей объекта — х. у, вычисляются функции — f (x), переменные с индексами — a[i].

Если есть несколько операций с одинаковым приоритетом, то они вычисляются в соответствии с их ассоциативностью. Операции с левой ассоциативностью вычисляются слева направо. Например, х * у / z вычисляется как (x*y)/z. Операции с правой ассоциативностью вычисляются справа налево. Операции присваивания и тернарная операция (?:) имеют правую ассоциативность. Все другие двоичные операции имеют левую ассоциативность.

Можно заключать выражения в скобки для принудительного вычисления некоторых частей выражения раньше других. Например, выражение 2 + 3 * 2 в обычном случае будет иметь значение 8, поскольку операции умножения выполняются раньше операций сложения, а результатом вычисления выражения (2 + 3) * 2 будет число 10, поскольку компилятор C# получит данные о том, что операцию сложения (+) нужно вычислить до выполнения операции умножения (*).

Таблица 3.3.

Приоритеты и ассоциативность операций языка C#.

Приоритет

Категория

Операции

Ассоциативность

Первичные.

(expr) х. у f (x) а[х] х++ х— new sizeof (t) typeof (t) checked (expr) unchecked (expr).

Слева направо.

Унарные.

+ -! ~ ++xx (T)x.

Слева направо.

Мультипликативные.

(Умножение).

*/%.

Слева направо.

Аддитивные (Сложение).

+ ;

Слева направо.

Сдвиг.

" «.

Слева направо.

Отношения, проверка типов.

= is as.

Слева направо.

Эквивалентность.

== ≠.

Слева направо.

Логическое.

&.

Слева направо.

Логическое исключающее ИЛИ (XOR).

||.

Слева направо.

Логическое ИЛИ (OR).

Слева направо.

Условное И.

&&.

Слева направо.

Условное ИЛИ.

II.

Слева направо.

Условное выражение.

?:

Справа налево.

Присваивание.

= *= /= %= += -= «= «= &= A= |=.

Справа налево.

Порядок выполнения операций с объектами пользовательских классов и структур можно изменить. Такой процесс называется перегрузкой операций (рассмотрено в разд. 4.8).

Следует отметить, что в языке C# нет операции возведения в степень. Для возведения в степень используется статический метод Pow () класса System.Math.

Показать весь текст
Заполнить форму текущей работой