C2672 '_Sort_unchecked': не найдена соответствующая перегруженная функция. Ошибка GA, обнаружившая эту ошибку при сортирC++

Программы на C++. Форум разработчиков
Anonymous
C2672 '_Sort_unchecked': не найдена соответствующая перегруженная функция. Ошибка GA, обнаружившая эту ошибку при сортир

Сообщение Anonymous »

Я создаю класс Growable Array на C++ и использую для него шаблоны, и в этой реализации у меня также есть итератор подкласса //forward olny, а затем в основной строке выдается ошибка

Код: Выделить всё

sort(Aint.begin(), Aint.end());
упомянут в заголовке.

Код: Выделить всё

// My header file

#pragma once
template
class GA
{
int size;
T* Vs;
public:
GA(int _size = 1)
{
size = _size;
Vs = new T[size]{};
}
// suggestion by PaulMcKenzie but still the error remains
GA(const GA& other)
{
size = other.size;
Vs = new T[size];
for (int i = 0; i < size; i++)
{
Vs[i] = other.Vs[i];
}
}
T& operator[](int i)
{
return Vs[i];
}
int length()
{
return size;
}
const T& operator[](int i)const
{
return Vs[i];
}
friend ostream& operatorp != s.p;
}
const iterator operator++(int)
{
iterator temp = *this;
this->p++;
return temp;
}
iterator& operator++()
{
this->p++;
return *this;
}
T& operator*()
{
return *p;
}
};

iterator begin()
{
return iterator(Vs);
}
iterator end()
{
return iterator(Vs + size);
}

iterator find(T v)
{
for (int i = 0; i < size; i++)
{
if (Vs[i] == v)
return iterator(Vs + i);
}
return end();
}

void replaceAt(iterator& i, T v)
{
*i = v;
}
void insertBefore(iterator& t, T v)
{
T* HA = new T[size + 1];
for (int vi = 0, hi = 0; vi < size; vi++, hi++)
{
if (&Vs[vi] == t.p)
{
HA[hi] = v;
hi++;
}
HA[hi] = Vs[vi];
}

delete[]Vs;
Vs = HA;
size++;
}
};

Код: Выделить всё

//main()

#include 
#include 
using namespace std;
#include "GA.h"

void initAint(GA& Aint)
{
for (int i = 0; i < Aint.length(); i++)
{
Aint[i] = (rand() % 6 + 1) * 100;
}
}
void print(const char* msg, const GA& Aint)
{
cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78453421/c2672-sort-unchecked-no-matching-overloaded-function-foundga-error-finding[/url]

Вернуться в «C++»