да это я чтобы пропустить элемент 0.
Неоправданная избыточность информации - плохой тон. Уменьшай индекс на 1. А если ты перепишешь класс под шаблоны и в каком-либо случае у тебя элементами будут служить объекты по 100МБ?
Ну а если у меня сначала было Array a(5,5) .... а потом уже a=b, следовательно место под a изначально было же выделено.
По поводу того чтобы не копировались мои массивы для сравнения исправлю, спасибо за подсказку.
Во-первых, при создании присваивай переменной NULL, а при удалении делай так:
if(ptr)
{
delete []ptr;
ptr = NULL;
}
В прочем, если ты тут же выделяешь память, то присваивать NULL нет необходимости.
Компилируется так - я и не использую
Что ты используешь? У меня в CodeBlocks не компилировалось, посмотрел мануалы - exit() объявлена в cstdio. Привыкнешь ещё, а потом будешь удивляться почему не компилируется в других средах...
Не читал я ещё о enum, посмотрю что он из себя представляет. Через switch идея была сделать.
Это очень просто. enum [имя] {<элемент1>[=значение][, элемент2[=значение2], элемент3[=значение3], ...]} [переменные];
Т.е. enum X {a, b, c}; объявит перечисление X с элементами a, b, c, имеющими значения 0, 1, 2. Далее в коде их можно использовать как константы. Можно сделать так: enum {a = 10, b = 20, c}; - объявление безымянного перечисления, a=10, b=20, c=21.
P.S. Поменьше слушай
Mr2, он часто глупости говорит. Или хотя бы обдумывай его слова, а не верь на слово.
А ещё плохо знаком с сабжем, раз осмеивает возможность присвоения объекту самому себе.