Арифметические операции (Arithmetic operations)

Арифметические операции (Arithmetic operations)

Библиотека обеспечивает базовые классы функциональных объектов для всех арифметических операторов языка.

template ‹class T›

struct plus: binary_function‹T, T, T› {

 Т operator()(const T& x, const T& y) const {return x + y;}

};

template ‹class T›

struct minus: binary_function‹T, T, T› {

 Т operator()(const T& x, const T& y) const {return x - y;}

};

template ‹class T›

struct times: binary_function‹T, T, T› {

 Т operator()(const T& x, const T& y) const (return x * y;}

};

template ‹class T›

struct divides: binary_function‹T, T, T› {

 Т operator()(const T& x, const T& y) const {return x / y;}

};

template ‹class T›

struct modulus: binary_function‹T, T, T› {

 Т operator()(const T& x, const T& y) const {return x % y;}

};

template ‹class T›

struct negate: unary_function‹T, T› {

 Т operator()(const T& x) const {return -x;}

};

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

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

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

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

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

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


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

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

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


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

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

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


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

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

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


Операции с итераторами (Iterator operations)

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

Операции с итераторами (Iterator operations) Так как только итераторы произвольного доступа обеспечивают + и - операторы, библиотека предоставляет две шаблонные функции advance и distance. Эти функции используют + и - для итераторов произвольного доступа (и имеют, поэтому, сложность


Логические операции (Logical operations)

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

Логические операции (Logical operations) template ‹class T›struct logical_and: binary_function‹T, T, bool› { bool operator()(const T& x, const T& y) const {return x&& y;}};template ‹class T›struct logical_or: binary_function‹T, T, bool› { bool operator()(const T& x, const T& y) const {return x || y;}};template ‹class T›struct logical_not: unary_function‹T, bool› { bool operator()(const T& x) const


Не меняющие последовательность операции (Non-mutating sequence operations)

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

Не меняющие последовательность операции (Non-mutating sequence operations) Операции с каждым элементом (For each) template <class InputIterator, class Function> Function for_each(InputIterator first, InputIterator last, Function f);for_each применяет f к результату разыменования каждого итератора в диапазоне [first, last) и возвращает f. Принято,


Меняющие последовательность операции (Mutating sequence operations)

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

Меняющие последовательность операции (Mutating sequence operations) Копировать (Copy) template ‹class InputIterator, class OutputIterator›OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result);copy копирует элементы. Для каждого неотрицательного целого числа n ‹ (last - first) выполняется присваивание *(result + n) = *(first + n).


Операции сортировки и отношения (Sorting and related operations)

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

Операции сортировки и отношения (Sorting and related operations) Все операции в этом разделе имеют две версии: одна берёт в качестве параметра функциональный объект типа Compare, а другая использует operator‹.Compare - функциональный объект, который возвращает значение, обратимое в bool. Compare comp


Операции над множеством для сортированных структур (Set operations on sorted structures)

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

Операции над множеством для сортированных структур (Set operations on sorted structures) Этот раздел определяет все основные операции над множеством для сортированных структур. Они даже работают с множествами с дубликатами, содержащими множественные копии равных элементов. Семантика


Операции над пирамидами (Heap operations)

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

Операции над пирамидами (Heap operations) Пирамида - специфическая организация элементов в диапазоне между двумя итераторами произвольного доступа [a, b). Два её ключевые свойства: (1) *a - самый большой элемент в диапазоне, (2) *a может быть удалён с помощью pop_heap или новый элемент


Обобщённые численные операции (Generalized numeric operations)

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

Обобщённые численные операции (Generalized numeric operations) Накопление (Accumulate) template ‹class InputIterator, class T›T accumulate(InputIterator first, InputIterator last, T init);template ‹class InputIterator, class T, class BinaryOperation›T accumulate(InputIterator first, InputIterator last, T init, BinaryOperation binary_op);accumulate подобен оператору APL reduction и функции Common Lisp reduce, но он


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

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

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


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

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

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


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

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

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