名稱空間
變體
操作

數值庫

來自 cppreference.com
< cpp

C++ 數值庫包含常用的數學函式和型別,以及經過最佳化的數值陣列和對隨機數生成的支援。

目錄

[編輯] 數學函式和型別

[編輯] 常用數學函式

標頭檔案 <cmath> 提供了標準 C 庫的數學函式,例如 std::fabsstd::sqrtstd::sin

[編輯] 數學特殊函式 (C++17 起)

標頭檔案 <cmath> 也提供了多個數學特殊函式,例如 std::betastd::hermitestd::cyl_bessel_i

[編輯] 數學常數 (C++20 起)

標頭檔案 <numbers> 提供了多個數學常數,例如 std::numbers::pistd::numbers::sqrt2

[編輯] 基本線性代數演算法 (C++26 起)

標頭檔案 <linalg> 提供了基於 BLAS 的基本線性代數演算法。

[編輯] 資料並行型別 (C++26 起)

標頭檔案 <simd> 提供了用於顯式宣告資料並行和構造資料以進行更高效 SIMD 訪問的可移植型別。

[編輯] 複數算術

定義於標頭檔案 <complex>
一種複數型別
(類模板)

[編輯] 數值陣列

定義於標頭檔案 <valarray>
數值陣列、陣列掩碼和陣列切片
(類模板)

[編輯] 數值演算法

標頭檔案 <numeric> 提供下列數值演算法

[編輯] 因子運算 (C++17 起)

定義於標頭檔案 <numeric>
(C++17)
計算兩個整數的最大公約數
(函式模板) [編輯]
(C++17)
計算兩個整數的最小公倍數
(函式模板) [編輯]

[編輯] 插值運算 (C++20)

定義於標頭檔案 <numeric>
(C++20)
兩個數或指標之間的中點
(函式模板) [編輯]
定義於標頭檔案 <cmath>
(C++20)
線性插值函式
(函式) [編輯]

[編輯] 飽和算術 (C++26 起)

定義於標頭檔案 <numeric>
(C++26)
對兩個整數進行飽和加法運算
(函式模板) [編輯]
(C++26)
對兩個整數進行飽和減法運算
(函式模板) [編輯]
(C++26)
對兩個整數進行飽和乘法運算
(函式模板) [編輯]
(C++26)
對兩個整數進行飽和除法運算
(函式模板) [編輯]
返回一個整數值,該值被鉗制在另一個整數型別的範圍內
(函式模板) [編輯]

[編輯] 數值運算

定義於標頭檔案 <numeric>
(C++11)
以起始值的連續增量填充一個範圍
(函式模板) [編輯]
以起始值的連續增量填充一個範圍
(演算法函式物件)[編輯]
對一個範圍的元素進行求和或摺疊
(函式模板) [編輯]
(C++17)
類似於 std::accumulate,但順序是亂序的
(函式模板) [編輯]
應用一個可呼叫物件,然後進行亂序歸約
(函式模板) [編輯]
計算兩個元素範圍的內積
(函式模板) [編輯]
計算一個範圍內相鄰元素之間的差值
(函式模板) [編輯]
計算一個範圍元素的部分和
(函式模板) [編輯]
類似於 std::partial_sum,將第 ith 個輸入元素包含在第 ith 個和中
(函式模板) [編輯]
類似於 std::partial_sum,將第 ith 個輸入元素從第 ith 個和中排除
(函式模板) [編輯]
應用一個可呼叫物件,然後計算包含掃描
(函式模板) [編輯]
應用一個可呼叫物件,然後計算排除掃描
(函式模板) [編輯]

[編輯] 雜項

[編輯] 偽隨機數生成

標頭檔案 <random> 定義了偽隨機數生成器和數值分佈。標頭檔案 <cstdlib> 也包含了透過 std::srandstd::rand 實現的 C 風格隨機數生成。

[編輯] 浮點環境 (C++11 起)

標頭檔案 <cfenv> 定義了與異常浮點狀態相關的標誌和函式,例如上溢和除以零。

[編輯] 位操作 (C++20 起)

標頭檔案 <bit> 提供了多個函式模板來訪問、操縱和處理單個位和位序列。標量型別的位元組序 (endianness) 可以透過 std::endian 工具進行檢查。

[編輯] 參閱

C 文件中關於數值的部分