【问题标题】:Build project by CMake, has a problem for use of "undeclared identifier 'nullptr' "通过 CMake 构建项目,使用“未声明的标识符 'nullptr'”有问题
【发布时间】:2019-07-01 09:34:37
【问题描述】:

我的项目使用CMake构建android-ndk,当我run app打电话时,会出现use of undeclared identifier 'nullptr'

代码已构建,用于日志:

/Users/userName/Desktop/GuideMachine/SDK-Android/app/src/main/cpp/ivw-jni/ivw-jni.cpp:25:35:错误:使用未声明的标识符“nullptr” IvwRes(size_t nSize) : 缓冲区(nullptr), size(nSize) {

【问题讨论】:

  • 你应该添加add_definitions(-std=c++11)到CMakeLists.txt

标签: android cmake android-ndk


【解决方案1】:

你需要配置C++ 11支持,在你的编译器版本上是默认的,并且nullptr实际上是未定义的。

【讨论】:

    【解决方案2】:

    如果你不需要 c++11,可以只在编译器中添加定义:在 CMakeLists.txt 中添加

    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Dnullptr=0")
    

    【讨论】:

      猜你喜欢
      • 2014-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-10
      • 2015-07-20
      • 2012-05-28
      • 1970-01-01
      相关资源
      最近更新 更多