2012-02-09 11 views
1

ここでは、STLのpdfの基本的な例があります。 なぜ機能しないのですか?stl copy()iterator:バイナリ '>>':演算子が見つかりません

#include "stdafx.h" 
#include <vector> 
#include <algorithm> 
#include <iostream> 
#include <iterator> 

using namespace std; 


int _tmain(int argc, _TCHAR* argv[]) 
{ 
    vector<string> coll; 
    copy(istream_iterator<string>(cin), //start of source 
      istream_iterator<string>(), //end of source 
      back_inserter(coll)); 
    return 0; 
} 

エラー:

ClCompile: All outputs are up-to-date. 
stl_testing1.cpp 
c:\program files\microsoft visual studio 10.0\vc\include\iterator(470): error C2678: binary '>>' : 
no operator found which takes a left-hand operand of type 'std::basic_istream<_Elem,_Traits>' (or there is no acceptable conversion) 
      with 
      [ 
       _Elem=char, 
       _Traits=std::char_traits<char> 
      ] 
      c:\program files\microsoft visual studio 10.0\vc\include\istream(1053): could be 'std::basic_istream<_Elem,_Traits> &std::operator 
>><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &&,signed char *)' 
      with 
      [ 
       _Elem=char, 
       _Traits=std::char_traits<char> 
      ] 
      c:\program files\microsoft visual studio 10.0\vc\include\istream(1060): or  'std::basic_istream<_Elem,_Traits> &std::operator 
>><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &&,signed char &)' 
      with 
      [ 
       _Elem=char, 
       _Traits=std::char_traits<char> 
      ] 
      c:\program files\microsoft visual studio 10.0\vc\include\istream(1067): or  'std::basic_istream<_Elem,_Traits> &std::operator 
>><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &&,unsigned char *)' 
      with 

私が間違っているのだろうか。これはWin32コンソールアプリケーションです。

答えて

4
#include <string> 

これは役に立ちます。

+0

私の親愛なる、多分私は散歩を取る必要があります:Dは非常にありがとうございます。 – 4pie0

関連する問題