Объясните, почему не работает...
|
От: |
miheich
|
|
| Дата: | 14.03.02 13:42 |
|
Оценка: |
|
Из книги Страуструпа, стр 97
#include <string>
#include <iostream>
#include <fstream>
#include <ostream>
#include <istream>
#include <iterator>
#include <vector>
#include <algorithm>
using namespace std;
int main(int argc, char* argv[])
{
string from, to;
cin >> from >> to;
ifstream is(from.c_str());
istream_iterator<string> ii(is);
istream_iterator<string> eos;
vector<string> b(ii,eos);
sort(b.begin(),b.end());
ofstream os(to.c_str());
ostream_iterator<string> oo(os,'\n');
unique_copy(b.begin(),b.end(),oo);
return !is.eof() && !os;
}
при компилировании дает
C:\Maxim\Project\VC\Stroustrup\example2_383\example2_383.cpp(33) : error C2664: '__thiscall std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > > >::std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::a
llocator<char> > > >(unsigned int,const class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &,const class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > &)
' : cannot convert parameter 1 from 'class std::istream_iterator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,char,struct std::char_traits<char> >' to 'unsigned int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
C:\Maxim\Project\VC\Stroustrup\example2_383\example2_383.cpp(37) : error C2664: '__thiscall std::ostream_iterator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,char,struct std::char_traits<char> >::std::ostr
eam_iterator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,char,struct std::char_traits<char> >(class std::basic_ostream<char,struct std::char_traits<char> > &,const char *)' : cannot convert parameter 2 fro
m 'const char' to 'const char *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
Error executing cl.exe.
example2_383.obj — 2 error(s), 0 warning(s)
Пока на собственное сообщение не было ответов, его можно удалить.