【发布时间】:2011-09-06 04:21:51
【问题描述】:
我一直在使用带有 -std=c++0x 的 gcc 在 C++0x/11 中利用基于范围的 for 循环,如下所示:
for (int i : container) ...
我最近尝试过 clang (clang+llvm-2.9-x86_64-apple-darwin10),但这些语句开箱即用是编译错误。根据http://clang.llvm.org/cxx_status.html 支持。我尝试在命令行上添加 -stdlib=libc++,但随后我收到一个错误,即找不到 iostream 标头。我需要做什么才能让 clang 使用 C++0x/11 功能?
【问题讨论】:
-
您要编译的代码是什么?您是否尝试过包含
<iostream>? clang 知道在哪里可以找到标准库吗?如果去掉基于范围的 for 循环,代码还能编译吗?