Espacios de nombres
Variantes

Aritmética racional en tiempo de compilación

De cppreference.com
 
 
Biblioteca de metaprogramación
Rasgos de tipo
Categorías de tipo
(C++11)
(C++11)(DR*)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11) 
(C++11)
(C++11)
Propiedades de tipos
(C++11)
(C++11)
(C++14)
(C++11)(en desuso en C++26)
(C++11)(hasta C++20*)
(C++11)(en desuso en C++20)
(C++11)
Constantes de rasgos de tipo
Metafunciones
(C++17)
Operaciones admitidas
Relaciones y consultas de propiedades
Modificaciones de tipos
(C++11)(C++11)(C++11)
Transformaciones de tipos
(C++11)(en desuso en C++23)
(C++11)(en desuso en C++23)
(C++11)
(C++11)(hasta C++20*)(C++17)

(C++11)
(C++17)
Aritmética racional en tiempo de compilación
Secuencias de enteros en tiempo de compilación
 
 

La plantilla de clase std::ratio y las plantillas asociadas proporcionan apoyo para la aritmética racional en tiempo de compilación. Cada instanciación de esta plantilla representa exactamente cualquier número racional finito.

Fracciones en tiempo de compilación

Definido en el archivo de encabezado <ratio>
(C++11)
Representa una fracción racional exacta.
(plantilla de clase) [editar]

La biblioteca estándar proporciona varias definiciones de tipo convenientes que corresponden a las razones del Sistema Internacional de Unidades (abreviado SI, del francés Système international d'unités):

Definido en el archivo de encabezado <ratio>
Tipo Definición
yocto std::ratio<1, 1000000000000000000000000>, si std::intmax_t puede representar el denominador
zepto std::ratio<1, 1000000000000000000000>, si std::intmax_t puede representar el denominador
atto std::ratio<1, 1000000000000000000>
femto std::ratio<1, 1000000000000000>
pico std::ratio<1, 1000000000000>
nano std::ratio<1, 1000000000>
micro std::ratio<1, 1000000>
milli std::ratio<1, 1000>
centi std::ratio<1, 100>
deci std::ratio<1, 10>
deca std::ratio<10, 1>
hecto std::ratio<100, 1>
kilo std::ratio<1000, 1>
mega std::ratio<1000000, 1>
giga std::ratio<1000000000, 1>
tera std::ratio<1000000000000, 1>
peta std::ratio<1000000000000000, 1>
exa std::ratio<1000000000000000000, 1>
zetta std::ratio<1000000000000000000000, 1>, si std::intmax_t puede representar el numerador
yotta std::ratio<1000000000000000000000000, 1>, si std::intmax_t puede representar el numerador

Artimética racional en tiempo de compilación

Se proporcionan varias plantillas de alias que realizan operaciones aritméticas en objetos ratio en tiempo de compilación.

Definido en el archivo de encabezado <ratio>
(C++11)
Agrega dos objetos ratio en tiempo de compilación.
(plantilla de alias) [editar]
Resta dos objetos ratio en tiempo de compilación.
(plantilla de alias) [editar]
Multiplica dos objetos ratio en tiempo de compilación.
(plantilla de alias) [editar]
divide dos objetos ratio en tiempo de compilación.
(plantilla de alias) [editar]

Comparación racional en tiempo de compilación

Se proporcionan varias plantillas de clase que realizan operaciones de comparación en objetos ratio en tiempo de compilación.

Definido en el archivo de encabezado <ratio>
Compara la igualdad de dos objetos ratio en tiempo de compilación.
(plantilla de clase) [editar]
Compara la desigualdad de dos objetos ratio en tiempo de compilación.
(plantilla de clase) [editar]
Compara dos objetos ratio para menor que en tiempo de compilación.
(plantilla de clase) [editar]
Compara dos objetos ratio para menor o igual que en tiempo de compilación.
(plantilla de clase) [editar]
Compara dos objetos ratio para mayor que en tiempo de compilación.
(plantilla de clase) [editar]
Compara dos objetos ratio para mayor o igual que en tiempo de compilación.
(plantilla de clase) [editar]