Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Checked и unchecked 5 страница. float operator %(float x, float y); double operator %(double x, double y);





· Остаток для чисел с плавающей запятой:

float operator %(float x, float y);
double operator %(double x, double y);

В следующей таблице приведены результаты всех возможных комбинаций ненулевых конечных значений, нулей, бесконечных значений и ошибок NaN В таблице x и y — положительные конечные значения. z является результатом x % y и вычисляется как x – n * y, где n является максимальным возможным целым числом, меньшим или равным x / y. Этот метод вычисления остатка аналогичен методу, используемому для целых операндов, но отличается от определения по стандарту IEEE 754 (в котором n является целым числом, ближайшим к x / y).

 

  +y –y +0 –0 +∞ –∞ NaN
+x +z +z NaN NaN x x NaN
–x –z –z NaN NaN –x –x NaN
+0 +0 +0 NaN NaN +0 +0 NaN
–0 –0 –0 NaN NaN –0 –0 NaN
+∞ NaN NaN NaN NaN NaN NaN NaN
–∞ NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN NaN

 

· Остаток для десятичных чисел:

decimal operator %(decimal x, decimal y);

Если значение правого операнда равно нулю, возникает исключение System.DivideByZeroException. Масштаб результат до округления равен большему масштабу из двух операндов, а знак результата (если он не равен нулю) равен знаку x.

Получение остатка для десятичных чисел эквивалентно использованию оператора остатка типа System.Decimal.

7.8.4 Оператор сложения;

Для операции вида x + y чтобы выбрать конкретную реализацию оператора, применяется разрешение перегрузки бинарного оператора (§7.3.4). Операнды преобразуются в типы параметров выбранного оператора, а тип результата является типом возвращаемого значения этого оператора.

Ниже перечислены стандартные операторы сложения. Для числовых типов и типов перечислений стандартные операторы сложения вычисляют сумму двух операндов. Когда один или оба операнда имеют строковый тип, стандартные операторы сложения выполняют сцепление строковых представлений операндов.

· Сложение целых чисел:

int operator +(int x, int y);
uint operator +(uint x, uint y);
long operator +(long x, long y);
ulong operator +(ulong x, ulong y);

В контексте checked если сумма выходит за пределы диапазона типа результирующего значения, возникает исключение System.OverflowException. В контексте unchecked о переполнениях не сообщается, и все старшие биты, выходящие за пределы диапазона результирующего значения, отбрасываются.

· Сложение чисел с плавающей запятой:

float operator +(float x, float y);
double operator +(double x, double y);

Сумма вычисляется в соответствии с арифметическими правилами стандарта IEEE 754. В следующей таблице приведены результаты всех возможных комбинаций ненулевых конечных значений, нулей, бесконечных значений и ошибок NaN В таблице x и y являются ненулевыми конечными значениями, а z является результатом x + y. Если x и y имеют одинаковую величину, но противоположные знаки, то z равен положительному нулю. Если результат x + y слишком велик для представления в целевом типе, то z является бесконечным значением с таким же знаком, как и у x + y.

 

  y +0 –0 +∞ –∞ NaN
x z x x +∞ –∞ NaN
+0 y +0 +0 +∞ –∞ NaN
–0 y +0 –0 +∞ –∞ NaN
+∞ +∞ +∞ +∞ +∞ NaN NaN
–∞ –∞ –∞ –∞ NaN –∞ NaN
NaN NaN NaN NaN NaN NaN NaN

 

· Сложение десятичных чисел:

decimal operator +(decimal x, decimal y);

Если результирующее значение слишком велико для представления в формате decimal, то возникает исключение System.OverflowException. Масштаб результата до округления равен большему из масштабов двух операндов.

Получение суммы десятичных чисел эквивалентно использованию оператора сложения типа System.Decimal.

· Сложение элементов перечисления. В каждом типе перечисления неявно предоставляются следующие стандартные операторы, где E является типом перечисления, а U является базовым типом E:

E operator +(E x, U y);
E operator +(U x, E y);

Во время выполнения операторы вычисляются в точности как (E)((U)x + (U)y).

· Сцепление строк:

string operator +(string x, string y);
string operator +(string x, object y);
string operator +(object x, string y);

These overloads of the binary + operator perform string concatenation. Если один операнд при сцеплении строк равен null, то подставляется пустая строка. Иначе любой нестроковый аргумент преобразуется в свое строковое представление путем вызова виртуального метода ToString, наследуемого от типа bject. Если метод ToString возвращает null, то подставляется пустая строка.

using System;

class Test
{
static void Main() {
string s = null;
Console.WriteLine("s = >" + s + "<"); // displays s = ><
int i = 1;
Console.WriteLine("i = " + i); // displays i = 1
float f = 1.2300E+15F;
Console.WriteLine("f = " + f); // displays f = 1.23E+15
decimal d = 2.900m;
Console.WriteLine("d = " + d); // displays d = 2.900
}
}

Результатом оператора сцепления строк является строка, состоящая из символов левого операнда, за которыми следуют символы правого операнда. Оператор сцепления строк никогда не возвращает значение null. При отсутствии памяти для размещения результирующей строки может возникать исключение System.OutOfMemoryException.

· Комбинация делегатов. В каждом типе делегата неявно предоставляется следующий стандартный оператор, где D имеет тип делегата:

D operator +(D x, D y);

Бинарный оператор + выполняет комбинацию делегатов, когда оба операнда имеют некоторый тип делегата D. (Если операнды имеют разные типы делегатов, возникает ошибка времени привязки.) Если первый операнд равен null, результат операции равен значению второго операнда (даже если оно также равно null). Иначе, если второй операнд равен null, то результатом операции является значение первого операнда. Иначе результатом операции является новый экземпляр делегата, который при вызове вызывает первый операнд, а затем второй операнд. Примеры комбинации операндов см. в разделах §7.8.5 и §15.4. Поскольку System.Delegate не является типом делегата, для него оператор + не определен.

7.8.5 Оператор вычитания;

Для операции вида x – y, чтобы выбрать конкретную реализацию оператора, применяется разрешение перегрузки бинарного оператора (§7.3.4). Операнды преобразуются в типы параметров выбранного оператора, а тип результата является типом возвращаемого значения этого оператора.







Дата добавления: 2015-09-07; просмотров: 517. Нарушение авторских прав; Мы поможем в написании вашей работы!




Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Расчет концентрации титрованных растворов с помощью поправочного коэффициента При выполнении серийных анализов ГОСТ или ведомственная инструкция обычно предусматривают применение раствора заданной концентрации или заданного титра...

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

Общая и профессиональная культура педагога: сущность, специфика, взаимосвязь Педагогическая культура- часть общечеловеческих культуры, в которой запечатлил духовные и материальные ценности образования и воспитания, осуществляя образовательно-воспитательный процесс...

Studopedia.info - Студопедия - 2014-2025 год . (0.014 сек.) русская версия | украинская версия