gpt4 book ai didi

c++ - Visual Studio 2017 Android NDK 数学.h

转载 作者:太空宇宙 更新时间:2023-11-04 14:33:17 24 4
gpt4 key购买 nike

我正在尝试使用 Android NDK 将一些 OpenGL ES 代码从 Windows 移植到 Android。我正在使用 Visual Studio 2017 和 C++。到目前为止,我在 VS 中创建了一个跨平台 gles 项目并删除了 ios 数据。我将一个接一个地放置代码文件,并尝试修复我能找到的任何错误。

我遇到的问题是似乎找不到 math.h 函数。

这里有一些可能相关的信息:

  • 平台工具集是 clang 3.8
  • 目标 API 级别是 android-21
  • 语言标准是c++11
  • 我已将 m; 添加为链接器库依赖项的选项

如果我包含 math.h 我得到:

use of undeclared identifier 'sqrt' (and all the other math.h functions I'm using)

如果我包含 cmath 我会得到:

no member names 'acos' in the global namespace (and all the other cmath functions)

文件路径(由 Visual Studio 找到):

c:\ProgramData\Microsoft\AndroidNDK64\android-ndk-r13b\platforms\android-21\arch-x86\usr\include\math.h

c:\ProgramData\Microsoft\AndroidNDK64\android-ndk-r13b\sources\cxx-STL\gnu-libstdc++\4.9\include\cmath

如果我删除所有数学调用,它会编译。

有没有人设法在这种情况下使用 cmath?如果是这样,您有任何提示或指出我做错了什么吗?

谢谢。

最佳答案

如果你#include <cmath>这些方法在 std 中命名空间所以你应该使用std::acos

关于c++ - Visual Studio 2017 Android NDK 数学.h,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48137308/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com