Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2020, 13:23   #1
Falcome
Пользователь
 
Регистрация: 24.03.2020
Сообщений: 15
По умолчанию С++ множество set

Где в кодо находится конструктор, деструктор, коструктор копирования,
и надо доделать код "Проверка, являются ли два множества одинаковыми, символ "==". Операция вида A== B, где A и B имеют тип "Множество", должна возвращать значение true, если множества A и B идентичны, и значение false в противном случае."
#include
#include
using namespace std;

template
class Set
{
public:
Set();
Set(Set& other);
Set& operator=(Set& other);
bool operator==(Set& other);
T& operator[](size_t index);
const T& operator[](size_t index) const;
void show() const;
size_t size() const;
~Set();
private:
size_t _size;
T* arr;
};

template
Set::Set()
{
this->_size = 0;
this->arr = new T[this->_size];
}

template
Set::Set(Set& other)
{
this->_size = other._size;
this->arr = new T[this->_size];
for (size_t i = 0; i < this->_size; i++)
{
this->arr[i] = other.arr[i];
}
}

template
void Set::show() const
{
for (size_t i = 0; i < this->_size; i++)
{
cout << this->arr[i] << " ";
}
cout << endl;
}

template
Set& Set:perator=(Set& other)
{
if (this->arr != nullptr)
{
delete[] this->arr;
}
this->_size = other._size;
this->arr = new T[this->_size];
for (size_t i = 0; i < this->_size; i++)
{
this->arr[i] = other.arr[i];
}
return *this;
}

template
T& Set:perator[](size_t index)
{
return this->arr[index];
}

template
const T& Set:perator[](size_t index) const
{
return this->arr[index];
}

template
size_t Set::size() const
{
return this->_size;
}

template
bool Set:perator==(Set& other)
{
if (this->_size != other._size)
{
return false;
}
for (size_t i = 0; i < this->_size; i++)
{
if (this->arr[i] != other.arr[i])
{
return false;
}
}
return true;
}

template
Set::~Set()
{
if (this->arr != nullptr)
{
delete[] this->arr;
this->arr = nullptr;
this->_size;
}
}

int main()
{
Seta;

}
Falcome вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа в Паскале: Даны три множества : Х1, Х2, Х3. Сформировать множество Y=(X1UX2) ⋂(X1UX3)\(X2UX3) и множество Y1 Агнесска Помощь студентам 0 06.05.2016 13:50
тип множество TimoLLIa Паскаль, Turbo Pascal, PascalABC.NET 0 15.10.2011 20:53
Множество, содержащее натуральные числа из первой сотни. Сформировать новое множество из простых чисел первого множества Aimet Паскаль, Turbo Pascal, PascalABC.NET 3 16.06.2011 20:50
Дано множество А, напечатать четные элементы, входящие в другое множество (Паскаль) Марийка92 Помощь студентам 4 03.04.2011 17:38
Задано некоторое множество М и множество Т того же типа dark999 Помощь студентам 5 01.04.2011 14:17