12.3.2. Арифметические объекты-функции

12.3.2. Арифметические объекты-функции

Предопределенные арифметические объекты-функции поддерживают операции сложения, вычитания, умножения, деления, взятия остатка и вычисления противоположного по знаку значения. Вызываемый оператор – это экземпляр, ассоциированный с типом Type. Если тип является классом, предоставляющим перегруженную реализацию оператора, то именно эта реализация и вызывается.

plusstring stringAdd;

// вызывается string::operator+()

sres = stringAdd( sval1, sval2 );

Сложение:

plusType

*

dres = BinaryFunc( plusdouble(), dval1, dval2 );

minusint intSub;

ires = intSub( ival1, ival2 );

Вычитание:

minusType

*

dres = BinaryFunc( minusdouble(), dval1, dval2 );

multipliescomplex complexMultiplies;

cres = complexMultiplies( cval1, cval2 );

Умножение:

multipliesType

*

dres = BinaryFunc( multipliesdouble(), dval1, dval2 );dividesint intDivides;

ires = intDivides( ival1, ival2 );

Деление:

dividesType

dres = BinaryFunc( dividesdouble(), dval1, dval2 );

Взятие остатка:

modulusType

*

modulusInt IntModulus;

Ires = IntModulus( Ival1, Ival2 );

ires = BinaryFunc( modulusint(), ival1, ival2 );

negateint intNegate;

ires = intNegate( ires );

Вычисление противоположного значения:

negateType

*

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

6.6 Арифметические Преобразования

Из книги C++ автора Хилл Мюррей

6.6 Арифметические Преобразования Большое количество операций вызывают преобразования и дают тип результата одинаковым образом. Этот стереотип будет называться «обычным арифметическим преобразованием».Во-первых, любые операнды типа char, unsigned char или short преобразуются к


Объекты DataSet с множеством таблиц и объекты DataRelation

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Объекты DataSet с множеством таблиц и объекты DataRelation До этого момента во всех примерах данной главы объекты DataSet содержали по одному объекту DataTable. Однако вся мощь несвязного уровня ADO.NET проявляется тогда, когда DataSet содержит множество объектов DataTable. В этом случае вы можете


88. В качестве аргументов алгоритмов и компараторов лучше использовать функциональные объекты, а не функции

Из книги Стандарты программирования на С++. 101 правило и рекомендация автора Александреску Андрей

88. В качестве аргументов алгоритмов и компараторов лучше использовать функциональные объекты, а не функции РезюмеПредпочтительно передавать алгоритмам функциональные объекты, а не функции, а компараторы ассоциативных контейнеров просто должны быть функциональными


99. Не используйте недействительные объекты и небезопасные функции

Из книги Язык Си - руководство для начинающих автора Прата Стивен

99. Не используйте недействительные объекты и небезопасные функции РезюмеВы же не используете просроченные лекарства? И недействительные объекты, и "антикварные", но небезопасные функции способны навредить здоровью ваших программ.ОбсуждениеИмеется три основные


I. Арифметические операции

Из книги C++ для начинающих автора Липпман Стенли

I. Арифметические операции + Прибавляет величину, находящуюся справа, к величине, стоящей слева - Вычитает величину, стоящую справа, из величины, указанной слева - Будучи унарной операцией, изменяет знак величины, стоящей справа * Умножает величину справа на величину,


4.2. Арифметические операции

Из книги HTML, XHTML и CSS на 100% автора Квинт Игорь

4.2. Арифметические операции Таблица 4.1. Арифметические операции Символ операции Значение Использование * Умножение expr*expr / Деление expr / expr % Остаток от деления expr % expr + Сложение expr + expr - Вычитание expr – expr Деление целых чисел дает в результате целое


8.2. Глобальные объекты и функции

Из книги Конец холивара. Pascal vs C автора Кривцов М. А.

8.2. Глобальные объекты и функции Объявление функции в глобальной области видимости вводит глобальную функцию, а объявление переменной – глобальный объект. Глобальный объект существует на протяжении всего времени выполнения программы. Время жизни глобального


12.3. Объекты-функции

Из книги Описание языка PascalABC.NET автора Коллектив РуБоард

12.3. Объекты-функции Наша функция min() дает хороший пример как возможностей, так и ограничений механизма шаблонов:template typename Typeconst Type&min( const Type *p, int size ){Type minval = p[ 0 ];for ( int ix = 1; ix size; ++ix )if ( p[ ix ] minval )minval = p[ ix ];return minval;}Достоинство этого механизма – возможность определить


12.3.1. Предопределенные объекты-функции

Из книги автора

12.3.1. Предопределенные объекты-функции Предопределенные объекты-функции подразделяются на арифметические, логические и сравнительные. Каждый объект – это шаблон класса, параметризованный типами операндов. Для использования любого из них необходимо включить


12.3.3. Сравнительные объекты-функции

Из книги автора

12.3.3. Сравнительные объекты-функции Сравнительные объекты-функции поддерживают операции равенства, неравенства, больше, больше или равно, меньше, меньше или равно.equal_tostring stringEqual;sres = stringEqual( sval1, sval2 );ires = count_if( svec.begin(), svec.end(),Равенство:equal_toType* equal_tostring(), sval1 );not_equal_tocomplex


12.3.4. Логические объекты-функции

Из книги автора

12.3.4. Логические объекты-функции Логические объекты-функции поддерживают операции "логическое И" (возвращает true, если оба операнда равны true, – применяет оператор &&, аcсоциированный с типом Type), "логическое ИЛИ" (возвращает true, если хотя бы один из операндов равен true, –


19.2.4. Объекты-исключения и виртуальные функции

Из книги автора

19.2.4. Объекты-исключения и виртуальные функции Если сгенерированный объект-исключение имеет тип производного класса, а обрабатывается catch-обработчиком для базового, то этот обработчик не может использовать особенности производного класса. Например, к функции-члену value(),


Арифметические операции

Из книги автора

Арифметические операции Для работы с числами используют арифметические операции.• Сложение – знак плюс (+). Например, 5 + 7 = 12.• Вычитание – знак минус (-). Например, 67 – 43 = 24.• Умножение – звездочка (*). Например, 2 * 2 = 4.• Деление – косая черта (/). Например, 45 / 5 = 9.• Остаток от


Арифметические операции

Из книги автора

Арифметические операции + – сложение— – вычитание* – умножение/ – делениеDIV – деление нацелоMOD – остаток от деления


Арифметические операции

Из книги автора

Арифметические операции Унарные операции – применяются к одной переменной.++ – увеличение на единицу (x++ выдаёт старое значение, ++x – новое значение).– – – уменьшение на единицу, аналогично операции ++.Бинарные операции – стоят между двумя переменными или


Арифметические операции

Из книги автора

Арифметические операции К арифметическим относятся бинарные операции +, -, *, / для вещественных и целых чисел, бинарные операции div и mod для целых чисел и унарные операции + и - для вещественных и целых чисел. Тип выражения x op y, где op - знак бинарной операции +, - или *,