N
nns2009
У меня почему-то не создаётся массив классов, точнее создаётся, но не эксплуатируется. Я пытаюсь создать так:
или так:
может я в классе что не так сделал, вот класс:
сама строчка создания прекрасно работает ( pastime pases[2]; ),
но потом строчки вида: pases[0].r = 120; не работают, компилятор пишет что:
1) нельзя объявить массив размером 0
2) массив не может быть типа default-int
3) нельзя объявить два массива с одинаковым именем
хотя во второй строчке я лишь назначаю свойство r первого элемента массива равным 120.
Код:
[b]pastime** pases = new *pastime[2];
pases[0] = new pastime();
pases[1] = new pastime();[/b]
Код:
[b]pastime pases[2];
pases[0] = new pastime();
pases[1] = new pastime();[/b]
Код:
class pastime
{
public:
BYTE r;
BYTE g;
BYTE b;
char* name;
char* description;
pastime()
{
r = 255;
g = 255;
b = 255;
name = "Не назначено"; //new char[13];
description = "Не назначено"; //new char[13];
return;
}
pastime(byte r1, byte g1, byte b1, char* name1, char* description1)
{
r = r1;
g = g1;
b = b1;
name = new char[strlen(name1)+1];
strcpy(name, name1);
description = new char[strlen(description1)+1];
strcpy(description, description1);
return;
}
~pastime()
{
delete [] name;
delete [] description;
return;
}
};
сама строчка создания прекрасно работает ( pastime pases[2]; ),
но потом строчки вида: pases[0].r = 120; не работают, компилятор пишет что:
1) нельзя объявить массив размером 0
2) массив не может быть типа default-int
3) нельзя объявить два массива с одинаковым именем
хотя во второй строчке я лишь назначаю свойство r первого элемента массива равным 120.