1
A
回答
2
是的,有。 abs
from <cmath>
0
如果参数始终为double
,我建议您仍使用fabs
- 它更可靠。风险是:有时只有abs(int)
将可见,因此您的double
参数将被截断为int
(但您可能会收到编译器警告)。
其中的一个原因是,直到C++ 17它不能保证一个单个报头包括abs(int)
和abs(double)
:<cmath>
必须包含abs(double)
<cstdlib>
和必须含有abs(int)
,但是当然它们可以包含两者。所以,改变编译器可能会改变选择哪个超载。
又如:如果您#include
"math.h"
而不是<cmath>
,并使用Visual C++,将abs(double)
可见?这将是 - 到Visual Studio 2013,但是当你升级到Visual Studio 2015时,你会失去它。
当然,当其参数类型未知时,例如使用abs
时,仍然应该使用它。它是模板的一部分。
相关问题
- 1. 为什么使用晶圆厂()而不是铸造?
- 2. 用CDI替换工厂类
- 3. 用椭圆替换网址
- 4. 25.1.0 Android支持库正在破坏晶圆厂行为
- 5. 晶圆厂按钮设计与矢量资产错误
- 6. 晶圆厂棒棒糖显示上长按奇怪的影子
- 7. android:仅在第一个标签上显示晶圆厂图标
- 8. 如何面料(Python编写)包使其CLI工具晶圆厂
- 9. Android的晶圆厂图标找不到类“android.graphics.drawable.RippleDrawable”
- 10. 离子晶圆厂名单公开,关闭事件
- 11. 的Android - 华为设备上奇怪的晶圆厂海拔
- 12. 使用Ninject IOC替换工厂
- 13. 无法将我的晶圆厂图标设置到我的页面右下方
- 14. 如何更改主要活动中晶圆厂的色调和背景色调?
- 15. iPhone,是否有数学功能,如晶圆厂将使数字负值?
- 16. C#替换String.Split
- 17. objective-c用ASIHTTPRequest替换NSMutableURLRequest
- 18. 在C#中使用“\ /”替换“\”#
- 19. 用SqlCommand替换OracleCommand [C#/ ASP.NET]
- 20. c#用epoche替换日期
- 21. C++ - 用%20替换空格
- 22. C++ - cli如何用“\\”替换“\”
- 23. 用文件替换c:\:\\\ c |使用PHP
- 24. asp.net替代水晶报告
- 25. 我可以使用jmock替换工厂返回的实现吗?
- 26. 在Spring中使用依赖注入来替换工厂模式
- 27. 夹具如何替换为使用rails3-generators的工厂?
- 28. 使用宏以工厂模式样式替换“create()”函数API
- 29. BYTE C宏的C++替换
- 30. C - 替换单词
为什么你需要更换它?它的工作方式与C早期的相同。 –
此外,请仔细阅读标签维基,您使用的四个标签中的三个不适用于此。 –