- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
class Massiv{
int *a;
public:
void Sozd(int k);
};
void Massiv::Sozd(int k)
{
a=(int *) malloc (sizeof(int) * (k+3));
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+162
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 с установкой и лаборантками.
лишь бы умные слова сморозить, фабрика тут нахер не упёрлась. фабрика пригодна когда нужно создаавать и возвращать разные подклассы, закастенные под один надкласс. зачем оно тут?
По-моему генерит....
Так что - реальный говно-код!!
Поэтому обычно и пишут подобный метод, а в конструкторе лишь инициализируют поля дефолтными значениями. Это надёжнее в смысле отлова будущих ошибок.
Другое дело, что а) подобный метод обычно возвращает признак успеха или неудачи и б) освобождать память я бы предпочёл в деструкторе.
Поэтому говнокод, но не сильно. Плюсовать не буду но и минуса не поставлю.