Aritmética racional en tiempo de compilación
De cppreference.com
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) |
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) |
(C++11) |
Resta dos objetos ratio en tiempo de compilación. (plantilla de alias) |
(C++11) |
Multiplica dos objetos ratio en tiempo de compilación. (plantilla de alias) |
(C++11) |
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> | |
(C++11) |
Compara la igualdad de dos objetos ratio en tiempo de compilación. (plantilla de clase) |
(C++11) |
Compara la desigualdad de dos objetos ratio en tiempo de compilación. (plantilla de clase) |
(C++11) |
Compara dos objetos ratio para menor que en tiempo de compilación. (plantilla de clase) |
(C++11) |
Compara dos objetos ratio para menor o igual que en tiempo de compilación. (plantilla de clase) |
(C++11) |
Compara dos objetos ratio para mayor que en tiempo de compilación. (plantilla de clase) |
(C++11) |
Compara dos objetos ratio para mayor o igual que en tiempo de compilación. (plantilla de clase) |