#include <string>
#include <vector>
#include <iostream>
#include <functional>
using namespace std;
int main()
{
vector<string> svec;
string tmp;
while (cin >> tmp) {
if (find(svec.begin(), svec.end(), tmp) != svec.end())
svec.push_back(tmp);
}
for (auto const &str : svec) {
cout << str << " ";
}
cout << endl;
}
error msg as below
11_8.cc: In function ‘int main()’:
11_8.cc:13:47: error: no matching function for call to ‘find(std::vector<std::__cxx11::basic_string<char> >::iterator, std::vector<std::__cxx11::basic_string<char> >::iterator, std::__cxx11::string&)’
if (find(svec.begin(), svec.end(), tmp) != svec.end())
^
In file included from /usr/include/c++/7/bits/locale_facets.h:48:0,
from /usr/include/c++/7/bits/basic_ios.h:37,
from /usr/include/c++/7/ios:44,
from /usr/include/c++/7/ostream:38,
from /usr/include/c++/7/iostream:39,
from 11_8.cc:3:
/usr/include/c++/7/bits/streambuf_iterator.h:369:5: note: candidate: template<class _CharT2> typename __gnu_cxx::__enable_if<std::__is_char<_CharT2>::__value, std::istreambuf_iterator<_CharT> >::__type std::find(std::istreambuf_iterator<_CharT>, std::istreambuf_iterator<_CharT>, const _CharT2&)
find(istreambuf_iterator<_CharT> __first,
^~~~
/usr/include/c++/7/bits/streambuf_iterator.h:369:5: note: template argument deduction/substitution failed:
11_8.cc:13:47: note: ‘__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char>*, std::vector<std::__cxx11::basic_string<char> > >’ is not derived from ‘std::istreambuf_iterator<_CharT>’
if (find(svec.begin(), svec.end(), tmp) != svec.end())
^
Aucun commentaire:
Enregistrer un commentaire