Borderou de evaluare (job #2199680)
Utilizator | Data | 28 aprilie 2018 17:57:51 | |
---|---|---|---|
Problema | Algoritmul lui Dijkstra | Status | done |
Runda | Arhiva educationala | Compilator | cpp | Vezi sursa |
Scor | 0 |
Raport evaluator
Eroare de compilare:
user.cpp: In function ‘int main()’:
user.cpp:8:17: error: use of ‘auto’ in lambda parameter declaration only available with -std=c++14 or -std=gnu++14
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
^~~~
user.cpp:8:28: error: use of ‘auto’ in lambda parameter declaration only available with -std=c++14 or -std=gnu++14
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
^~~~
user.cpp: In lambda function:
user.cpp:8:52: error: request for member ‘first’ in ‘lhs’, which is of non-class type ‘int’
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
^~~~
user.cpp:8:64: error: request for member ‘first’ in ‘rhs’, which is of non-class type ‘int’
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
^~~~
In file included from /usr/include/c++/6/bits/stl_algobase.h:71:0,
from /usr/include/c++/6/algorithm:61,
from user.cpp:1:
/usr/include/c++/6/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Iter_comp_iter<_Compare>::operator()(_Iterator1, _Iterator2) [with _Iterator1 = __gnu_cxx::__normal_iterator<std::pair<unsigned int, unsigned int>*, std::vector<std::pair<unsigned int, unsigned int> > >; _Iterator2 = __gnu_cxx::__normal_iterator<std::pair<unsigned int, unsigned int>*, std::vector<std::pair<unsigned int, unsigned int> > >; _Compare = main()::<lambda(int&, int&)>]’:
/usr/include/c++/6/bits/stl_heap.h:217:14: required from ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::pair<unsigned int, unsigned int>*, std::vector<std::pair<unsigned int, unsigned int> > >; _Distance = int; _Tp = std::pair<unsigned int, unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<main()::<lambda(int&, int&)> >]’
/usr/include/c++/6/bits/stl_heap.h:247:25: required from ‘void std::__pop_heap(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::pair<unsigned int, unsigned int>*, std::vector<std::pair<unsigned int, unsigned int> > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<main()::<lambda(int&, int&)> >]’
/usr/include/c++/6/bits/stl_heap.h:312:19: required from ‘void std::pop_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<std::pair<unsigned int, unsigned int>*, std::vector<std::pair<unsigned int, unsigned int> > >; _Compare = main()::<lambda(int&, int&)>]’
user.cpp:48:51: required from here
/usr/include/c++/6/bits/predefined_ops.h:125:18: error: no match for call to ‘(main()::<lambda(int&, int&)>) (std::pair<unsigned int, unsigned int>&, std::pair<unsigned int, unsigned int>&)’
{ return bool(_M_comp(*__it1, *__it2)); }
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/6/bits/predefined_ops.h:125:18: note: candidate: void (*)(int&, int&) <conversion>
/usr/include/c++/6/bits/predefined_ops.h:125:18: note: candidate expects 3 arguments, 3 provided
user.cpp:8:37: note: candidate: main()::<lambda(int&, int&)>
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
^~~~
user.cpp:8:37: note: no known conversion for argument 1 from ‘std::pair<unsigned int, unsigned int>’ to ‘int&’
#define COMP [](auto& lhs, auto& rhs) { return lhs.first > rhs.first; }
^
user.cpp:48:47: note: in expansion of macro ‘COMP’
std::pop_heap(costs.begin(), costs.end(), COMP);
Ceva nu functioneaza?
- Citeste despre borderoul de evaluare.
- Daca tot nu e bine, contacteaza-ne pe forum !