是否有重载的sqrt等数学函数

时间:2014-03-16 08:35:28

标签: c++

我正在研究一些c ++代码并使用math.h库。由于数学库是针对C的,所以例如,sqrt函数有许多不同的名称,如sqrt,sqrtf,sqrtl,我想知道是否有一个只有一个名称的c ++。

2 个答案:

答案 0 :(得分:6)

当然,请在标题<cmath>中查看std::sqrt

答案 1 :(得分:3)

http://msdn.microsoft.com/en-us/library/f1xa99e6.aspx解释了不同之处 在C ++中sqrt()接受doublefloatlong double,而sqrtf()只接受浮动。
有两个不同版本的唯一原因是因为C不支持重载,所以必须有两个函数 C++允许重载,因此实际上有三种不同版本的sqrt()采用各种大小的浮点参数。
C++中,应使用重载的sqrt(在cmath中定义,namespace std)。