Класс Set(множество целых чисел). Оператор += для множества и значений
По заданию необходимо разработать класс Set(множество целых чисел), позволяющие использовать их в следующей программе:
Set set1(c1), set2(c1,c2), set3=set2; set1+=c1; set1+=set2; set3=set1; cout<<set3;
Проблемы вызывает оператор +=. Самостоятельно пробовал его прописать для объединения двух множеств следующим образом:
bool Set::checkContain(const int& n)
{
for (int i = 0; i < size; i++)
if (p[i] == n) return true;
return false;
}
Set& Set::operator += (const Set& s)
{
if (checkContain(s)) return *this;
size++;
p[size] = s;
}
checkContain необходим для проверки наличия элемента в множестве.
При попытке прописать выдаёт ошибки:
не существует подходящей функции преобразования из "const Set" в "const int" на строке if (checkContain(s)) return *this; и не существует подходящей функции преобразования из "const Set" в "int" на строке p[size] = s;
Прошу указать на проблему и, если можно, помочь с такой же задачей для добавления оператором += элемента во множества