Spec-Zone.ru › C++

std::modulus

Определено в заголовке <functional>
template< class T >
struct modulus;
(до C++14)
template< class T = void >
struct modulus;
(с C++14)

Функциональный объект для вычисления остатка от деления. Реализует operator% для типа T.

Специализации

Библиотека стандартных шаблонов предоставляет специализацию std::modulus когда T не указан, что оставляет типы параметров и тип возвращаемого значения для вывода.

modulus<void>
(C++14)
функциональный объект, реализующий x % y вывода типов аргументов и возвращаемого значения
(специализация шаблона класса)
(с C++14)

Типы членов

Тип Определение
result_type (устарело в C++17)(удалено в C++20) T
first_argument_type (устарело в C++17)(удалено в C++20) T
second_argument_type (устарело в C++17)(удалено в C++20) T

Эти типы членов получаются путём публичного наследования std::binary_function<T, T, T>.

(до C++11)

Члены-функции

operator()
возвращает остаток от деления первого аргумента на второй аргумент
(публичная функция-член)

std::modulus::operator()

T operator()( const T& lhs, const T& rhs ) const;
(до C++14)
constexpr T operator()( const T& lhs, const T& rhs ) const;
(с C++14)

Возвращает остаток от деления lhs на rhs.

Параметры

lhs, rhs - значения, которые делятся друг на друга

Значение результата

Результат lhs % rhs.

Исключения

Может выбросить исключения, определённые реализацией.

Возможная реализация

constexpr T operator()(const T& lhs, const T& rhs) const 
{
    return lhs % rhs;
}

См. также

fmodfmodffmodl
(C++11)(C++11)
остаток от операции деления с плавающей точкой
(функция)
remainderremainderfremainderl
(C++11)(C++11)(C++11)
знаковый остаток от операции деления
(функция)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/functional/modulus

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API