Compile Error

In file included from /nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_algobase.h:71,
                 from /nix/gcc-13.3.0/include/c++/13.3.0/string:51,
                 from /nix/gcc-13.3.0/include/c++/13.3.0/bits/locale_classes.h:40,
                 from /nix/gcc-13.3.0/include/c++/13.3.0/bits/ios_base.h:41,
                 from /nix/gcc-13.3.0/include/c++/13.3.0/ios:44,
                 from /nix/gcc-13.3.0/include/c++/13.3.0/ostream:40,
                 from iostream:41:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = people*; _Iterator2 = people*]’:
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1819:14:   required from ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1859:25:   required from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1950:31:   required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:4861:18:   required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = people*]’
foo.cc:16:6:   required from here
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:45:23: error: no match for ‘operator<’ (operand types are ‘people’ and ‘people’)
   45 |       { return *__it1 < *__it2; }
      |                ~~~~~~~^~~~~~~~
In file included from /nix/gcc-13.3.0/include/c++/13.3.0/string:48:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’
 1250 |     operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:45:23: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’
   45 |       { return *__it1 < *__it2; }
      |                ~~~~~~~^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’
 1258 |     operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:45:23: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’
   45 |       { return *__it1 < *__it2; }
      |                ~~~~~~~^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Val_less_iter::operator()(_Value&, _Iterator) const [with _Value = people; _Iterator = people*]’:
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1799:20:   required from ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Val_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1827:36:   required from ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1859:25:   required from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1950:31:   required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:4861:18:   required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = people*]’
foo.cc:16:6:   required from here
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:98:22: error: no match for ‘operator<’ (operand types are ‘people’ and ‘people’)
   98 |       { return __val < *__it; }
      |                ~~~~~~^~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’
 1250 |     operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:98:22: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’
   98 |       { return __val < *__it; }
      |                ~~~~~~^~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’
 1258 |     operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:98:22: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’
   98 |       { return __val < *__it; }
      |                ~~~~~~^~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Iter_less_val::operator()(_Iterator, _Value&) const [with _Iterator = people*; _Value = people]’:
/nix/gcc/include/c++/13.3.0/bits/stl_heap.h:140:48:   required from ‘void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = people*; _Distance = long int; _Tp = people; _Compare = __gnu_cxx::__ops::_Iter_less_val]’
/nix/gcc/include/c++/13.3.0/bits/stl_heap.h:247:23:   required from ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = people*; _Distance = long int; _Tp = people; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_heap.h:356:22:   required from ‘void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1635:23:   required from ‘void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1910:25:   required from ‘void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1926:27:   required from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = people*; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:1947:25:   required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = people*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’
/nix/gcc/include/c++/13.3.0/bits/stl_algo.h:4861:18:   required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = people*]’
foo.cc:16:6:   required from here
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:69:22: error: no match for ‘operator<’ (operand types are ‘people’ and ‘people’)
   69 |       { return *__it < __val; }
      |                ~~~~~~^~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’
 1250 |     operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1250:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:69:22: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’
   69 |       { return *__it < __val; }
      |                ~~~~~~^~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’
 1258 |     operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
      |     ^~~~~~~~
/nix/gcc-13.3.0/include/c++/13.3.0/bits/stl_iterator.h:1258:5: note:   template argument deduction/substitution failed:
/nix/gcc-13.3.0/include/c++/13.3.0/bits/predefined_ops.h:69:22: note:   ‘people’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’
   69 |       { return *__it < __val; }
      |                ~~~~~~^~~~~~~

信息

递交者
类型
递交
题目
P1946 魔法照片
语言
C++
递交时间
2024-09-21 22:00:04
评测时间
2024-09-21 22:00:04
评测机
分数
0
总耗时
0ms
峰值内存
0 Bytes