Namespaces
Variants

Numerics library

From de.cppreference.net

Die C++-Numerik-Bibliothek umfasst gängige mathematische Funktionen und Typen sowie optimierte numerische Arrays und Unterstützung für die Erzeugung von Zufallszahlen.

Inhaltsverzeichnis

Mathematische Funktionen und Typen

Häufig verwendete mathematische Funktionen

Die Header-Datei <cmath> bietet mathematische Funktionen der Standard-C-Bibliothek wie std::fabs , std::sqrt und std::sin .

Mathematische Spezialfunktionen (seit C++17)

Der Header <cmath> bietet ebenfalls mehrere mathematische Spezialfunktionen wie std::beta , std::hermite und std::cyl_bessel_i .

Mathematische Konstanten (seit C++20)

Der Header <numbers> stellt mehrere mathematische Konstanten bereit, wie beispielsweise std::numbers::pi oder std::numbers::sqrt2

Grundlegende lineare Algebra Algorithmen (seit C++26)

Der Header <linalg> stellt grundlegende lineare Algebra Algorithmen bereit, die auf BLAS basieren.

Datenparallele Typen (seit C++26)

Der Header <simd> bietet portable Typen, um Datenparallelität explizit anzugeben und Daten für effizienteren SIMD-Zugriff zu strukturieren.

Arithmetik komplexer Zahlen

Definiert im Header <complex>
Ein komplexer Zahlentyp
(Klassentemplate)

Numerische Arrays

Definiert im Header <valarray>
Numerische Arrays, Array-Masken und Array-Slices
(Klassentemplate)

Numerische Algorithmen

Der Header <numeric> bietet die folgenden numerischen Algorithmen:

Faktor-Operationen (seit C++17)

Definiert im Header <numeric>
(C++17)
berechnet den größten gemeinsamen Teiler zweier Ganzzahlen
(Funktionstemplate)
(C++17)
berechnet das kleinste gemeinsame Vielfache zweier Ganzzahlen
(Funktionstemplate)

Interpolationsoperationen (C++20)

Definiert im Header <numeric>
(C++20)
Mittelpunkt zwischen zwei Zahlen oder Zeigern
(Funktions-Template)
Definiert im Header <cmath>
(C++20)
Lineare Interpolationsfunktion
(Funktion)

Sättigungsarithmetik (since C++26)

Definiert im Header <numeric>
(C++26)
Sättigende Additionsoperation für zwei Ganzzahlen
(Funktions-Template)
(C++26)
Sättigende Subtraktionsoperation für zwei Ganzzahlen
(Funktions-Template)
(C++26)
Sättigende Multiplikationsoperation für zwei Ganzzahlen
(Funktions-Template)
(C++26)
Sättigende Divisionsoperation für zwei Ganzzahlen
(Funktions-Template)
Gibt einen auf den Wertebereich eines anderen Ganzzahltyps begrenzten Ganzzahlwert zurück
(Funktions-Template)

Numerische Operationen

Definiert in Header <numeric>
(C++11)
füllt einen Bereich mit aufeinanderfolgenden Inkrementen des Startwerts
(Funktionsschablone & Algorithmus-Funktionsobjekt)
füllt einen Bereich mit aufeinanderfolgenden Inkrementen des Startwerts
(Algorithmus-Funktionsobjekt)
summiert oder faltet einen Bereich von Elementen
(Funktionsschablone)
(C++17)
ähnlich wie std::accumulate, jedoch in beliebiger Reihenfolge
(Funktionsschablone)
wendet ein aufrufbares Objekt an, reduziert dann in beliebiger Reihenfolge
(Funktionsschablone)
berechnet das innere Produkt zweier Elementbereiche
(Funktionsschablone)
berechnet die Differenzen zwischen benachbarten Elementen in einem Bereich
(Funktionsschablone)
berechnet die Partialsumme eines Elementbereichs
(Funktionsschablone)
ähnlich wie std::partial_sum, bezieht das ith Eingabeelement in die ith Summe ein
(Funktionsschablone)
ähnlich wie std::partial_sum, schließt das ith Eingabeelement von der ith Summe aus
(Funktionsschablone)
wendet ein aufrufbares Objekt an, berechnet dann inklusive Scan
(Funktionsschablone)
wendet ein aufrufbares Objekt an, berechnet dann exklusive Scan
(Funktionsschablone)

Sonstiges

Pseudozufallszahlengenerierung

Der Header <random> definiert Pseudozufallszahlengeneratoren und numerische Verteilungen . Der Header <cstdlib> beinhaltet ebenfalls C-stilige Zufallszahlengenerierung mittels std::srand und std::rand .

Gleitkomma-Umgebung (seit C++11)

Der Header <cfenv> definiert Flags und Funktionen im Zusammenhang mit außergewöhnlichen Gleitkommazuständen , wie Überlauf und Division durch Null.

Bitmanipulation (seit C++20)

Der Header <bit> bietet mehrere Funktionsvorlagen zum Zugriff, zur Manipulation und Verarbeitung einzelner Bits und Bitsequenzen. Die Byte-Reihenfolge ( Endianness ) von skalaren Typen kann über die std:: endian Einrichtung inspiziert werden.

Geprüfte Ganzzahlarithmetik (seit C++26)

Der C-Kompatibilitätsheader <stdckdint.h> stellt mehrere Funktionsvorlagen für geprüfte Integer-Arithmetik bereit.

Definiert im Header <stdckdint.h>
(C++26)
Geprüfte Additionsoperation für zwei Ganzzahlen
(Funktionstemplate)
(C++26)
Geprüfte Subtraktionsoperation für zwei Ganzzahlen
(Funktionstemplate)
(C++26)
Geprüfte Multiplikationsoperation für zwei Ganzzahlen
(Funktionstemplate)

Siehe auch

C-Dokumentation für Numerik