在Android Studio中,std::variant
是在C++17标准中引入的
要解决这个问题,请按照以下步骤操作:
build.gradle
文件(位于项目根目录下)。android
块内,添加以下代码以启用C++17支持:android {
...
defaultConfig {
...
externalNativeBuild {
cmake {
...
cppFlags "-std=c++17"
}
}
}
}
ndk-build
而不是cmake
,请将cppFlags
替换为arguments
,如下所示:android {
...
defaultConfig {
...
externalNativeBuild {
ndkBuild {
...
arguments "NDK_CPLUSPLUS_STANDARD=17"
}
}
}
}
CMakeLists.txt
文件中启用C++17支持:set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
完成上述步骤后,std::variant
应该可以在Android Studio中正常使用了。如果仍然遇到问题,请确保您的Android Studio和NDK版本支持C++17。
领取专属 10元无门槛券
手把手带您无忧上云