tr1/normal_distribution:没有这样的文件或目录
tr1/normal_distribution: No such file or directory
我正在尝试将TR1用于某些C++项目。不幸的是,我收到一个错误,不明白为什么或如何正确执行此操作!我正在使用 gcc 4.4.5 在 Linux 下工作。
我收到错误
myfile.cpp:21:35: error: tr1/normal_distribution: No such file or directory
我需要的 TR1 文件是通过以下方式导入的:
#include <tr1/normal_distribution>
在CMakeLists中.txt我打开了TR1支持(-std=c++0x)
SET (CMAKE_CXX_FLAGS "-Wall -std=c++0x -DNDEBUG -O3 -march=nocona -msse4.2")
知道我做错了什么吗?
标志-std=c++0x
允许您访问在您的 gcc 版本中实现的任何 c++11 功能。对于随机数分布,c++11 具有标头random
。使用 c++11 时不需要 tr1
命名空间。
随机的tr1
版本在包含tr1/random
,并且所有内容都在std::tr1
命名空间下。要访问它,您不需要c++0x
标志。
需要明确的是:
对于 TR1 随机数:#include <tr1/random>
并使用 std::tr1::normal_distribution
。
对于 c++11 随机数:使用标志 c++0x
编译,然后#include <random>
并使用 std::normal_distribution
。
我相信它#include <random>
.无论如何,检查一下。
尝试将
的
以下标志添加到 CMakeLists.txt上的 cxx:
set (CMAKE_CXX_FLAGS "-stdlib=libstdc++")
-std=c++0x
不是必需
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 文本文件中的单词链表
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用新行和不使用新行读取文件
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 挂起和取消挂起一个文件DLL
- 如何确定我已使用非编码文件到达 EOF?
- 命名空间中具有.h和.cpp文件的类
- 如何使用ndk-build.cmd构建Android.so文件
- 从包含m行的文件中提取n行,必要时(惰性地)重复该文件
- 读取文件并输入到矢量中
- 在C++中查找文件
- c++库的公共头文件中应该包含什么
- 用c++从输入文件中读取另一行
- Cppcheck生成xml转储文件
- 读取文件的最后一行并输入到链接列表时出错
- 无法编译 rtmidi 测试 cmidiin.cpp 文件, 非法指令
- 如何将内容数组写入文本文件?
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到