名前空間
変種
操作

数値ライブラリ

From cppreference.com
< cpp
 
 
 

C++の数値ライブラリには、一般的な数学関数と型、最適化された数値配列、乱数生成のサポートが含まれています。

目次

[編集] 数学関数と型

[編集] 一般的な数学関数

ヘッダ <cmath> は、std::fabsstd::sqrtstd::sin のような 標準Cライブラリの数学関数 を提供します。

[編集] 数学特殊関数 (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)
2つの整数の最大公約数を計算する
(関数テンプレート) [編集]
(C++17)
2つの整数の最小公倍数を計算する
(関数テンプレート) [編集]

[編集] 補間操作 (C++20)

ヘッダー <numeric> で定義
(C++20)
2つの数値またはポインタの中間点
(関数テンプレート) [編集]
ヘッダー <cmath> で定義
(C++20)
線形補間関数
(関数) [編集]

[編集] 飽和演算 (C++26から)

ヘッダー <numeric> で定義
(C++26)
2つの整数に対する飽和加算操作
(関数テンプレート) [編集]
(C++26)
2つの整数に対する飽和減算操作
(関数テンプレート) [編集]
(C++26)
2つの整数に対する飽和乗算操作
(関数テンプレート) [編集]
(C++26)
2つの整数に対する飽和除算操作
(関数テンプレート) [編集]
別の整数型の範囲にクランプされた整数値を返す
(関数テンプレート) [編集]

[編集] 数値操作

ヘッダー <numeric> で定義
(C++11)
開始値からの連続した増分値で範囲を埋める
(関数テンプレート) [編集]
開始値からの連続した増分値で範囲を埋める
(アルゴリズム関数オブジェクト)[編集]
範囲の要素を合計または畳み込む
(関数テンプレート) [編集]
(C++17)
std::accumulate に似ているが、順序不同
(関数テンプレート) [編集]
呼び出し可能オブジェクトを適用し、順序不同に縮約する
(関数テンプレート) [編集]
2つの範囲の要素の内積を計算する
(関数テンプレート) [編集]
範囲内の隣接する要素間の差を計算する
(関数テンプレート) [編集]
範囲の要素の部分和を計算する
(関数テンプレート) [編集]
std::partial_sum に似ているが、i 番目の入力要素を i 番目の合計に含める
(関数テンプレート) [編集]
std::partial_sum に似ているが、i 番目の入力要素を i 番目の合計から除外する
(関数テンプレート) [編集]
呼び出し可能オブジェクトを適用し、インクルーシブスキャンを計算する
(関数テンプレート) [編集]
呼び出し可能オブジェクトを適用し、エクスクルーシブスキャンを計算する
(関数テンプレート) [編集]

[編集] その他

[編集] 擬似乱数生成

ヘッダ <random>擬似乱数生成器と数値分布を定義します。ヘッダ <cstdlib> は、std::srandstd::rand によるCスタイルの乱数生成も含みます。

[編集] 浮動小数点環境 (C++11から)

ヘッダ <cfenv> は、オーバーフローやゼロ除算のような、例外的な浮動小数点状態に関連するフラグと関数を定義します。

[編集] ビット操作 (C++20から)

ヘッダ <bit> は、個々のビットやビットシーケンスにアクセス、操作、処理するためのいくつかの関数テンプレートを提供します。スカラ型のバイトオーダー(エンディアン)は、std::endian 機能によって調べることができます。

[編集] 関連項目

English 日本語 中文(简体) 中文(繁體)