5 / 5 / 3
Регистрация: 05.03.2013
Сообщений: 220
1

Создайте класс динамического массива, в котором реализована проверка выхода за границы массива

26.08.2013, 19:09. Показов 1583. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создайте класс динамического массива, в котором реализована проверка выхода за границы массива. Перегрузите операторы: [ ], =, +, -,++ (добавление элемента в конец массива), -- (удаление элемента из конца массива).



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
52
53
54
55
56
57
58
59
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;
class myMas
{
public:
myMas(int n);
~myMas();
int getSz(){return *size;};
int operator[](int ar);
myMas& operator+(const myMas& ar);
void display();
private:
int *size;
int m;
int count;
};
 
myMas::myMas(int n)
{
size=new int[n];
count=n;
}
int myMas::operator[](int ar)
{
    if(ar>-1 && ar<*size)
    return myMas::size[ar];
}
 
myMas::~myMas()
{
delete [] size;
}
 
 
myMas& myMas::operator+(const myMas& ar)
{
    return *this;
}
void myMas::display()
{
    srand(time(NULL));
    for(int i=0;i<myMas::count;i++)
    {
        myMas::size[i]=rand()%10;
         cout << myMas::size[i] <<' ';
    }
cout<<endl;
}
void main()
{
    myMas ekz(6),ekz1(3),ekz2=ekz+ekz1;
    ekz.display();
    ekz1.display();
    ekz2.display();
 
system ("pause");
}




Подскажите плиз
А как создать перегрузку операторов =, +, -,++ (добавление элемента в конец массива), -- (удаление элемента из конца массива).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.08.2013, 19:09
Ответы с готовыми решениями:

Создайте класс динамического массива, в котором реализована проверка выхода за границы массива
Народ подскажите такую вещь я написал программку для вставки элементов в массив при этом...

Создайте класс динамического массива, в котором реализована проверка выхода за границы массива
Создайте класс динамического массива, в котором реализована проверка выхода за границы массива....

Класс динамического массива с проверкой выхода за границы массива
Задание такое: Создайте класс динамического массива, в котором реализована проверка выхода за...

Реализация защиты выхода за границы массива
Доброго времени! Прошу помочь разобраться с вопросом возникшим, при изучении C++. Я только начинаю...

1
584 / 387 / 216
Регистрация: 20.01.2013
Сообщений: 1,169
27.08.2013, 13:29 2
Как то так наверное
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
52
53
54
55
56
57
58
59
60
61
62
myMas& myMas::operator+(const myMas& ar)
{
    for(int i=0;i<count;++i)
         size[i]+=ar[i];
    return *this;
}
 
myMas& myMas::operator=(const myMas& ar)
{
    for(int i=0;i<count;++i)
         size[i]=ar[i];
    return *this;
}
 
myMas& myMas::operator-(const myMas& ar)
{
    for(int i=0;i<count;++i)
         size[i]-=ar[i];
    return *this;
}
myMas& myMas::operator++()
{
    for(int i=0;i<count;++i)
         ++size[i];
    return *this;
}
myMas& myMas::operator++(int)
{
    for(int i=0;i<count;++i)
         size[i]++;
    return *this;
}
 
void myMas::pushBack(int num)
{
    int * size1=new int[++count];
    for(int i=0;i<count-1;++i)
         size1[i]=size[i];
         size1[count]=num;
         delete [] size;
           size=NULL;
          size=new int[count];
           for(int i=0;i<count;++i)
             size[i]=size1[i];
          delete [] size1;
           size1=NULL;
}
 
void myMas::erase(){
if (count<=0) return;
 int * size1=new int[--count];
    for(int i=0;i<count;++i)
         size1[i]=size[i];
         size1[count]=num;
         delete [] size;
           size=NULL;
          size=new int[count];
           for(int i=0;i<count;++i)
             size[i]=size1[i];
          delete [] size1;
           size1=NULL;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.08.2013, 13:29
Помогаю со студенческими работами здесь

Помогите исправить ошибку выхода за границы массива
Проблема состоит в следующем - необходимо добавить строки в конец рваного массива. ...

Индексатор для проверки выхода массива за границы
Помогите сделать индексатор, временно сделал просто catch, не могу разобраться. Правил программу...

Ошибка выхода за границы массива, когда её быть не должно
Вот функция: public IntPtr getmas() { char chars =...

Исправить выход за границы двумерного динамического массива
Уважаемые форумчане, помогите, проблема в том, что пишет ошибку после выполнения функции вывода...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru