为什么随机标头无法导入

时间:2015-07-06 03:10:43

标签: c++ random include

我用C ++编写代码并通过键入make对其进行编译。发生错误:

  

/ usr / include / c ++ / 4.8 / bits / c ++ 0x_warning.h:32:2:错误:#error这   文件需要ISO C ++ 2011的编译器和库支持   标准。此支持目前是实验性的,必须启用   使用-std = c ++ 11或-std = gnu ++ 11编译器选项。

2 个答案:

答案 0 :(得分:1)

你需要添加" -std = c ++ 11"到你的编译器参数,告诉它它是一个C ++ 11编译

$ g++ -std=c++11 your_file.cpp -o your_program

如果您使用的是某些IDE,则需要搜索文档以了解如何添加此行以便编译器知道。

答案 1 :(得分:1)

随机库使用的是较新版本的C ++标准(C ++ 11)。您需要修改makefile以使用-std = c ++ 11标志。如果您发布了makefile内容,我可以进一步建议您,否则请查看以下问题:Makefile modification to support c++11

根据发布的cmakefile,将这些行添加到您的cmakefile:

set_property(TARGET abc PROPERTY CXX_STANDARD 11)
set_property(TARGET abc PROPERTY CXX_STANDARD_REQUIRED ON)