Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Anna1993
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 12
#1

Перегрузка оператора в классе Array - C++

27.11.2012, 19:00. Просмотров 260. Ответов 0
Метки нет (Все метки)

Задали написать перегрузку оператора для класса Array, который будет удалять все повторяющиеся элементы с массива, при этом мы не должны портить исходный массив, т.е. создаем копию исходного массива и изменяем его, вернуть мы должны массив без повторов с размерностью size-n, где n-количество удаленных элементов

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
class Array
{
    int *mas;
    int size;
    
public:
 
    Array ();
    Array (int size, bool random);
    Array (Array &a);
    ~Array (){delete [] mas;}
    void vivod ();
};
 
    Array :: Array () //конструктор по умолчанию(создаем нулевой массив)
    {
        size=10;
        mas = new int [size];
        for (int i=0; i<size; i++)
            mas [i] = 0;
    }
    Array :: Array (int s, bool r) //конструктор с параметрами(создаем массив со случайными числами)
    { 
        size=s;
        mas = new int[s];
        if(r!=0)
        {
            for(int i = 0; i < s; i++)
            mas[i] = rand()%100 + 10;
        }
    else
        {
        for(int i = 0; i < s; i++)
            mas[i] = 0;
        }
    }
    Array :: Array (Array &a) //конструктор копирования
    {
        //if(mas)   delete [] mas;
            size=a.size;
            mas=new int[size];
            for(int i=0;i<size;i++)
            mas[i]=a.mas[i];
        
    }
        
    void Array :: vivod () //функция вывода
    {
        for (int i=0; i<size; i++)
            printf ("%d ", mas [i]);
        puts ("");
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 19:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перегрузка оператора в классе Array (C++):

Перегрузка оператора '=' в классе - C++
#include &lt;iostream&gt; #include &lt;cstring&gt; using std::cout; using std::endl; class CMessage { public: ...

Перегрузка оператора ==, в классе Матрица - C++
#ifndef MATRIX_H #define MATRIX_H template &lt;class T&gt; class Matrix { public: Matrix(int Rows, int Cols); ~Matrix(); ...

Перегрузка бинарного оператора << в template классе - C++
Помогите пожалйста люди! не получается перегрузить оператор &gt;&gt; и &lt;&lt; в шаблонном классе выдает ошибку: error C2804: бинарный 'operator...

Перегрузка дружественного оператора вывода в шаблонном классе - C++
Здравствуйте! Я не могу понять как мне правильно сделать перегрузку оператора вывода ввывода в шаблонном классе ...

Перегрузка оператора сложения в классе выдает ошибку с деструктором - C++
Здравствуйте, взял у Липманна программу, которую по заданию надо доработать. Ее смысл заключается в том, что объект класса (динамическая...

Перегрузка оператора operator+() в пользовательском классе (сложение строк) - C++
Хотел научить класс складывать строки, но на моменте освобождения памяти temp происходит ошибка. Поля класса: char* Str, int length...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2012, 19:00
Привет! Вот еще темы с ответами:

Перегрузка оператора индексации в одном классе и использование в другом - C++
Вообщем проблема состоит в том, что не понимаю как это сделать. Есть класс Document в нем есть вектор vec состоящий из Item'ов. В классе...

Перегрузка оператора вывода в классе "Время" - C++
Здравствуйте. Столкнулся с проблемой при работе с классом (Время), что выводит или чушь или вообще ничего не выводит. Прописал (вроде бы) 1...

Перегрузка оператора "+" в классе - C++
Hello!! Я создаю класс двумерного массива. Использую данный код: template &lt;typename T&gt; class Array2D { public: //...

У меня класс B в классе A, а в классе B рекурсивная функция переопределения оператора "()", как её вызвать, не создавая явно объект класса B? - C++
#include &lt;windows.h&gt; #include &lt;iostream&gt; using namespace std; //Вот главный класс class A{ public: A (){}; class...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru