Numerics library
La biblioteca de numéricos de C++ incluye funciones y tipos matemáticos comunes, así como arreglos numéricos optimizados y soporte para generación de números aleatorios.
Contenidos |
Funciones y tipos matemáticos
Funciones matemáticas comunes
El encabezado <cmath> proporciona funciones matemáticas estándar de la biblioteca C como std::fabs , std::sqrt , y std::sin .
Funciones matemáticas especiales (desde C++17)
El encabezado <cmath> también proporciona varias funciones matemáticas especiales como std::beta , std::hermite , y std::cyl_bessel_i .
Constantes matemáticas (desde C++20)
El encabezado <numbers> proporciona varias constantes matemáticas, como std::numbers::pi o std::numbers::sqrt2
Algoritmos básicos de álgebra lineal (desde C++26)
El encabezado <linalg> proporciona algoritmos básicos de álgebra lineal que están basados en BLAS.
Tipos de datos paralelos (desde C++26)
El encabezado <simd> proporciona tipos portátiles para declarar explícitamente paralelismo de datos y estructurar datos para un acceso SIMD más eficiente.
Aritmética de números complejos
|
Definido en el encabezado
<complex>
|
|
|
un tipo de número complejo
(plantilla de clase) |
|
Arreglos numéricos
|
Definido en el encabezado
<valarray>
|
|
|
arreglos numéricos, máscaras de arreglo y segmentos de arreglo
(plantilla de clase) |
|
Algoritmos numéricos
El encabezado <numeric> proporciona los siguientes algoritmos numéricos:
Operaciones de factor (desde C++17)
|
Definido en el encabezado
<numeric>
|
|
|
(C++17)
|
calcula el máximo común divisor de dos enteros
(plantilla de función) |
|
(C++17)
|
calcula el mínimo común múltiplo de dos enteros
(plantilla de función) |
Operaciones de interpolación (C++20)
|
Definido en el encabezado
<numeric>
|
|
|
(C++20)
|
punto medio entre dos números o punteros
(plantilla de función) |
|
Definido en el encabezado
<cmath>
|
|
|
(C++20)
|
función de interpolación lineal
(función) |
Aritmética de saturación (desde C++26)
|
Definido en el encabezado
<numeric>
|
|
|
(C++26)
|
operación de adición con saturación en dos enteros
(plantilla de función) |
|
(C++26)
|
operación de sustracción con saturación en dos enteros
(plantilla de función) |
|
(C++26)
|
operación de multiplicación con saturación en dos enteros
(plantilla de función) |
|
(C++26)
|
operación de división con saturación en dos enteros
(plantilla de función) |
|
(C++26)
|
devuelve un valor entero limitado al rango de otro tipo entero
(plantilla de función) |
Operaciones numéricas
|
Definido en el encabezado
<numeric>
|
|
|
(C++11)
|
llena un rango con incrementos sucesivos del valor inicial
(plantilla de función) |
|
(C++23)
|
llena un rango con incrementos sucesivos del valor inicial
(objeto función de algoritmo) |
|
suma o pliega un rango de elementos
(plantilla de función) |
|
|
(C++17)
|
similar a
std::accumulate
, excepto fuera de orden
(plantilla de función) |
|
(C++17)
|
aplica un invocable, luego reduce fuera de orden
(plantilla de función) |
|
calcula el producto interno de dos rangos de elementos
(plantilla de función) |
|
|
calcula las diferencias entre elementos adyacentes en un rango
(plantilla de función) |
|
|
calcula la suma parcial de un rango de elementos
(plantilla de función) |
|
|
(C++17)
|
similar a
std::partial_sum
, incluye el elemento de entrada
i
ésimo
en la suma
i
ésima
(plantilla de función) |
|
(C++17)
|
similar a
std::partial_sum
, excluye el elemento de entrada
i
ésimo
de la suma
i
ésima
(plantilla de función) |
|
(C++17)
|
aplica un invocable, luego calcula un escaneo inclusivo
(plantilla de función) |
|
(C++17)
|
aplica un invocable, luego calcula un escaneo exclusivo
(plantilla de función) |
Misceláneos
Generación de números pseudoaleatorios
El encabezado <random> define generadores de números pseudoaleatorios y distribuciones numéricas . El encabezado <cstdlib> también incluye generación de números aleatorios estilo C mediante std::srand y std::rand .
Entorno de punto flotante (desde C++11)
El encabezado <cfenv> define banderas y funciones relacionadas con el estado excepcional de punto flotante , como desbordamiento y división por cero.
Manipulación de bits (desde C++20)
El encabezado <bit> proporciona varias plantillas de funciones para acceder, manipular y procesar bits individuales y secuencias de bits. El orden de bytes ( endianness ) de los tipos escalares puede inspeccionarse mediante la facilidad std:: endian .
Aritmética de enteros verificada (desde C++26)
El encabezado de compatibilidad C <stdckdint.h> proporciona varias plantillas de función para aritmética entera verificada.
|
Definido en el encabezado
<stdckdint.h>
|
|
|
(C++26)
|
operación de suma verificada en dos enteros
(plantilla de función) |
|
(C++26)
|
operación de resta verificada en dos enteros
(plantilla de función) |
|
(C++26)
|
operación de multiplicación verificada en dos enteros
(plantilla de función) |
Véase también
|
Documentación de C
para
Numerics
|