2

forward_list次のようなものに依存する単純な C++ プログラムを作成しました。

#include <forward_list>
#include <iostream>
int main() {
  std::forward_list<int> my_list;
  my_list.push_front(3);
  std::cout << my_list.top() << std::endl;
  return 0;
}

ただし、Mac でこのプログラムをコンパイルすると、次のclang++ my_program.cpp -std=c++11 -o my_programエラーが発生します。

my_program.cpp:1:14: fatal error: 'forward_list' file not found
#include <forward_list>
         ^
1 error generated.

なぜclang findができないのforward_listですか?他の C++11 機能は動作しています。たとえば、C++ 11 の機能であるautoことを示す警告が表示されますが、キーワードは機能します。auto

4

1 に答える 1

4

デフォルトでは、clang++ は C++11 をサポートしていない古い gcc-4.2 std ライブラリを使用します。コマンドで C++11 対応の std::lib を使用するように clang に指示できます-stdlib=libc++。libc++ には<forward_list>.

于 2013-06-02T13:30:54.070 に答える