fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9. string strArr[10];
  10. strArr[0] = string("dd");
  11. strArr[1] = string("gg");
  12. strArr[2] = string("tt");
  13. const vector<string> vecStr(strArr, strArr+6);
  14. advance(vecStr.begin(), 2);
  15. cout<<*(vecStr.begin())<<endl; // the output is dd
  16. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp: In function ‘int main()’:
prog.cpp:14:30: error: invalid initialization of non-const reference of type ‘__gnu_cxx::__normal_iterator<const std::basic_string<char>*, std::vector<std::basic_string<char> > >&’ from an rvalue of type ‘std::vector<std::basic_string<char> >::const_iterator {aka __gnu_cxx::__normal_iterator<const std::basic_string<char>*, std::vector<std::basic_string<char> > >}’
     advance(vecStr.begin(), 2);
                              ^
In file included from /usr/include/c++/4.8/bits/stl_algobase.h:66:0,
                 from /usr/include/c++/4.8/bits/char_traits.h:39,
                 from /usr/include/c++/4.8/ios:40,
                 from /usr/include/c++/4.8/ostream:38,
                 from /usr/include/c++/4.8/iostream:39,
                 from prog.cpp:1:
/usr/include/c++/4.8/bits/stl_iterator_base_funcs.h:173:5: error: in passing argument 1 of ‘void std::advance(_InputIterator&, _Distance) [with _InputIterator = __gnu_cxx::__normal_iterator<const std::basic_string<char>*, std::vector<std::basic_string<char> > >; _Distance = int]’
     advance(_InputIterator& __i, _Distance __n)
     ^
stdout
Standard output is empty