Помогите пожалуйста.Вот есть у меня задание:
Разработать класс, инкапсулирующий свойства одномерного динамического массива заданного размера, например, строку. Тип массива: Знаковый символьный массив.
Для организации динамического массива должен использоваться указатель соответствующего типа. Для хранения размера массива следует предусмотреть соответствующее поле, тип которого можно выбрать самостоятельно.
В классе предусмотреть функции, выполняющие следующие действия:
1.выделение памяти для динамического массива;
2.ввод данных в каждое поле;
3.вывод данных из каждого поля;
4.доступ по считыванию/записи в выбранный элемент массива;
5.освобождение памяти, занятой динамическим массивом.
В функции main() создать автоматический объект разработанного класса, указатель на объект, динамический объект и массив объектов (из 3-4 элементов).
Для каждого созданного объекта выполнить по очереди функции ввода размера массива, выделения памяти, ввода данных в массив, вывода данных на экран, вывода одного из элементов массива и освобождения памяти.
Модифицировать текст программы следующим образом: в любом месте функции main() создать блок (составной оператор), внутри которого создать объект класса и выполнить для него ввод данных. Попытаться получить доступ к объекту за пределами блока, например, вывести его данные.
И есть написанный код:
Код: Выделить всё
// CLS.H
class SIntArray
{
short int len, *arr;
public:
void SetArr();
void Input();
void Output();
void Delete();
void OutputN();
};
// FUNC.CPP
#include <iostream.h>
#include "cls.h"
void SIntArray::SetArr()
{
cout<<"Vvedite razmer massiva: ";
cin>>len;
arr = new short int[len];
return;
}
void SIntArray::Input()
{
cout<<"Vvedite dannie: \n";
for(int i = 0; i < len; i++)
{
cout <<"A["<<i<<"] = ";
cin >> arr[i];
}
}
void SIntArray::Output()
{
cout << "Massiv: \n";
for(int i = 0; i < len; i++)
cout <<"A["<<i<<"] = "<<arr[i]<<";\n";
}
void SIntArray::OutputN()
{
cout << "Vivod elementa massiva: ";
int nom;
cin >> nom;
cout << "A["<<nom<<"] = "<<arr[nom]<<";\n";
}
void SIntArray: :D elete()
{
delete[] arr;
cout << "Massiv ydalen \n";
}
// PROJ1.CPP
#include <iostream.h>
#include "FUNC.cpp"
int main()
{
SIntArray a;
a.SetArr();
a.Input();
a.Output();
a.OutputN();
a.Delete();
SIntArray* b;
int i;
b = new SIntArray[i];
b[i].SetArr();
b[i].Input();
b[i].Output();
b[i].OutputN();
b[i].Delete();
delete[] b;
SIntArray c[1];
int k;
c[k].SetArr();
c[k].Input();
c[k].Output();
c[k].OutputN();
c[k].Delete();
SIntArray *d;
{
d = new SIntArray;
d->SetArr();
d->Input();
d->Output();
d->OutputN();
d->Delete();
}
char e;
cin>>e;
return 0;
}
Я вообще то очень плохо там что-то понимаю

Заранее большое спасибо.