C++ Xcode的std::default\u random\u引擎的替代方案?

C++ Xcode的std::default\u random\u引擎的替代方案?,c++,xcode,random,compiler-errors,C++,Xcode,Random,Compiler Errors,我正在尝试编译一个在Xcode上用linux编写的程序,我使用了以下随机函数: std::random_device seed_device; std::default_random_engine engine(seed_device()); 但是默认的随机引擎不会在Xcode上编译。我应该使用不同的版本吗?您需要#包括 通常,当编译器抱怨“名称空间std中没有名为function\u name的类型”时,您必须检查: 您已经包含了正确的标题。您可以在任何适当的C++引用上查找右标题的名称。

我正在尝试编译一个在Xcode上用linux编写的程序,我使用了以下随机函数:

std::random_device seed_device;
std::default_random_engine engine(seed_device());
但是默认的随机引擎不会在Xcode上编译。我应该使用不同的版本吗?

您需要
#包括

通常,当编译器抱怨“名称空间
std
中没有名为
function\u name
的类型”时,您必须检查:

  • 您已经包含了正确的标题。您可以在任何适当的C++引用上查找右标题的名称。
  • 您的标准库支持C++1x(*)(或至少支持您想要的功能)
  • 您的编译器支持C++1x(*)(或者至少支持您想要的功能),如果需要,可以使用正确的标志来启用它

(*)x代表C++标准的版本,包括您想要的特性。

< p>您需要<代码>包含< <代码> > < /p> 通常,当编译器抱怨“名称空间
std
中没有名为
function\u name
的类型”时,您必须检查:

  • 您已经包含了正确的标题。您可以在任何适当的C++引用上查找右标题的名称。
  • 您的标准库支持C++1x(*)(或至少支持您想要的功能)
  • 您的编译器支持C++1x(*)(或者至少支持您想要的功能),如果需要,可以使用正确的标志来启用它

(*)x代表C++标准的版本,包括你想要的特性。< /P>你从编译器那里得到什么样的错误消息?当

default\u random\u engine
不起作用时,如果没有一些修复,其他引擎也不会很好地工作。我可以将
std::random\u device
与苹果的clang版本(更准确地说是苹果的LLVM版本6.0(clang-600.0.57)(基于LLVM 3.5svn)一起使用,这应该是与xcode 6.2一起安装的编译器)。但是,这是C++11的特性,您确定选择了C++11方言(编辑:和支持C++11的标准库)吗?(例如,请参阅)我收到的错误是“命名空间'std'中没有名为'random_device'的类型”和“命名空间'std'中没有名为'default_random_engine'的成员”。我如何再次检查Xcode是否使用C++11?我刚刚更新了所有内容,并假设它是。你包括
?废话,就是这样,谢谢。为什么linux中的g++不需要包含它才能工作?编译器会发出什么样的错误消息?当
default\u random\u engine
不起作用时,如果没有一些修复,其他引擎也不会很好地工作。我可以将
std::random\u device
与苹果的clang版本(更准确地说是苹果的LLVM版本6.0(clang-600.0.57)(基于LLVM 3.5svn)一起使用,这应该是与xcode 6.2一起安装的编译器)。但是,这是C++11的特性,您确定选择了C++11方言(编辑:和支持C++11的标准库)吗?(例如,请参阅)我收到的错误是“命名空间'std'中没有名为'random_device'的类型”和“命名空间'std'中没有名为'default_random_engine'的成员”。我如何再次检查Xcode是否使用C++11?我刚刚更新了所有内容,并假设它是。你包括
?废话,就是这样,谢谢。为什么linux中的g++不需要包含它才能工作?