Mathematical special functions (since C++17)
数学特殊函数库最初是Library TR1 ISO/IEC TR 19768:2007的组成部分,随后作为独立ISO标准ISO/IEC 29124:2010发布,最终自C++17起并入ISO C++标准。
请参阅 数学特殊函数 以了解此库的 ISO/IEC 29124:2010 版本。
目录 |
函数
|
定义于头文件
<cmath>
|
|
|
(C++17)
(C++17)
(C++17)
|
关联拉盖尔多项式
(函数) |
|
(C++17)
(C++17)
(C++17)
|
连带勒让德多项式
(函数) |
|
(C++17)
(C++17)
(C++17)
|
Β函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第一类完全椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第二类完全椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第三类(完全)椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
正则修正柱贝塞尔函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
柱面贝塞尔函数(第一类)
(函数) |
|
(C++17)
(C++17)
(C++17)
|
不规则变形柱面贝塞尔函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
柱面诺依曼函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第一类(不完全)椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第二类(不完全)椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
第三类(不完全)椭圆积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
指数积分
(函数) |
|
(C++17)
(C++17)
(C++17)
|
埃尔米特多项式
(函数) |
|
(C++17)
(C++17)
(C++17)
|
勒让德多项式
(函数) |
|
(C++17)
(C++17)
(C++17)
|
拉盖尔多项式
(函数) |
|
(C++17)
(C++17)
(C++17)
|
黎曼ζ函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
球面贝塞尔函数(第一类)
(函数) |
|
(C++17)
(C++17)
(C++17)
|
球面连带勒让德函数
(函数) |
|
(C++17)
(C++17)
(C++17)
|
球面诺依曼函数
(函数) |
注释
数学特殊函数中不带"
f
"或"
l
"后缀的
float
和
long
double
重载版本存在于ISO/IEC 29124:2010的最终草案(
N3060
)中,但在已发布的C++17/20标准中缺失(参见
LWG issue 3234
)。这些重载函数在VS 2022 17.3之前的MSVC STL中均未提供。
这些函数与类类型的 special member functions 无关。
| 功能测试 宏 | 值 | 标准 | 功能特性 |
|---|---|---|---|
__cpp_lib_math_special_functions
|
201603L
|
(C++17) | 数学特殊函数 |
缺陷报告
以下行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。
| DR | 适用版本 | 发布行为 | 正确行为 |
|---|---|---|---|
|
LWG 3234
( P1467R9 ) |
C++17 | 数学特殊函数的附加重载缺失 | 这些重载是必需的 |
参考文献
- C++23 标准 (ISO/IEC 14882:2024):
-
- 28.7.6 数学特殊函数 [sf.cmath]
- C++20 标准 (ISO/IEC 14882:2020):
-
- 26.8.6 数学特殊函数 [sf.cmath]
- C++17标准(ISO/IEC 14882:2017):
-
- 29.9.5 数学特殊函数 [sf.cmath]