Espacios de nombres
Variantes
Acciones

Aritmética racional en tiempo de compilación

De cppreference.com
< cpp‎ | numeric
 
 
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
 
Aritmética racional en tiempo de compilación
(C++11)
Aritmética
(C++11)
Comparación
(C++11)
 

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.

[editar] 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

[editar] 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]

[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]