相关疑难解决方法(0)

如何在CMake中激活C++ 11?

当我尝试运行CMake生成的makefile来编译我的程序时,我得到了错误

C++ 98模式不支持基于范围的循环.

我尝试添加add_definitions(-std=c++0x)到我的CMakeLists.txt,但它没有帮助.我也试过这个:

if(CMAKE_COMPILER_IS_GNUCXX)
    add_definitions(-std=gnu++0x)
endif()
Run Code Online (Sandbox Code Playgroud)

当我这样做时g++ --version,我得到:

g ++(Ubuntu/Linaro 4.6.1-9ubuntu3)4.6.1

我也试过SET(CMAKE_CXX_FLAGS "-std=c++0x"),这也行不通.

我不明白如何使用CMake激活C++ 11功能.

cmake c++11

349
推荐指数
12
解决办法
35万
查看次数

'sqrt'不是'std'的成员

我在linux中编译我的程序 - 它有以下几行:

std::sqrt((double)num);
Run Code Online (Sandbox Code Playgroud)

在Windows上没关系,但是在linux上我得到'sqrt'不是'std'的成员我有一个包括math.h

有什么问题吗?

c++ math std sqrt

15
推荐指数
2
解决办法
3万
查看次数

标签 统计

c++ ×1

c++11 ×1

cmake ×1

math ×1

sqrt ×1

std ×1