- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
class Massiv{
int *a;
public:
void Sozd(int k);
};
void Massiv::Sozd(int k)
{
a=(int *) malloc (sizeof(int) * (k+3));
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
class Massiv{
int *a;
public:
void Sozd(int k);
};
void Massiv::Sozd(int k)
{
a=(int *) malloc (sizeof(int) * (k+3));
}
У меня будет свой конструктор!
Я так делаю частенько.
void Massiv :: Del()
{ free(a); }
програмисты шарпа и явы вам руки не подадут..
Чтобы сделать smartMassiv с установкой и лаборантками.
лишь бы умные слова сморозить, фабрика тут нахер не упёрлась. фабрика пригодна когда нужно создаавать и возвращать разные подклассы, закастенные под один надкласс. зачем оно тут?
По-моему генерит....
Так что - реальный говно-код!!
Поэтому обычно и пишут подобный метод, а в конструкторе лишь инициализируют поля дефолтными значениями. Это надёжнее в смысле отлова будущих ошибок.
Другое дело, что а) подобный метод обычно возвращает признак успеха или неудачи и б) освобождать память я бы предпочёл в деструкторе.
Поэтому говнокод, но не сильно. Плюсовать не буду но и минуса не поставлю.