0

我正在使用 OpenGL 在 C++ 中做一个项目,并且不断受到来自 cmath.h 的数百个语法错误的影响。主要的难题是我什至根本没有提到或包括 cmath。我在一两件事上使用了 math.h,但在我进行最近的更改之前,该代码运行良好。回到以前工作的代码现在显示相同的错误,所以我有点难过从哪里开始寻找。

我是否遗漏了一些非常明显的东西,或者这可能是 Visual Studio 10 的问题?

4

1 回答 1

7

可能是因为没有(标准)cmath.h

C 数学头文件math.h和 C++ 也公开了这个库,但只是cmath,但是它的所有元素都被提升到 std:: 命名空间。

在 C++ 项目中,您应该像这样包含库:

 #include <cmath>

并使用它的元素,如:

 c=std::sqrt(
       std::pow(a,2)
      +std::pow(b,2));

或者你正在做的任何其他事情。

参考

http://en.cppreference.com/w/cpp/numeric/math

于 2012-10-28T12:26:58.233 回答