1

我认为答案应该是否定的,但是我今天编写了一些代码,这些代码完美编译并使用 pow 和 sqrt 显示了正确的答案,即使一开始我忘了添加 #include<cmath> 我在这里错过了什么?

4

2 回答 2

8

最有可能你#included 其他头文件,而这些头文件最终#includedcmathmath.h. 编辑要在评论中回答您的问题:本#include <iostream>可以做到,这取决于您的 C++ 标准库。标准不保证。

但是,如果您只是为自己声明这些函数,那么您也可以使用它们。尽管std为自己在命名空间中声明函数不符合标准,因此不推荐使用。

于 2013-10-10T17:22:41.347 回答
3

头文件只包含函数声明;您可以完美地声明没有标头的函数,它也可以正常工作。

您使用的其他头文件可能包含该头文件,而您却不知道。

隐式声明,即使用函数而不声明它,在 C++ 中是非法的。

于 2013-10-10T17:22:05.510 回答