Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ Конструктор глобального экземпляра

Автор: sheka 21.07.2011 3:17

Нужно сделать глобальный экземпляр, но чтобы принимал начальные значения после нажатия на кнопку. Конструктор оставить пустым, а при нажатии на кнопку вызвать метод инициализации? Как-то не интересно.
Хотя и так не получается: (не проверял, но смысл такой)

class mc{
private:x;
public:
mc(){}
init(int x)
{this->x} //вот здесь выдает ошибку памяти, следовательно
}* a; //здесь не произошел вызов конструктора. Если поставить а(), тогда ругается вообще
main(){
a->init(0);
}

Автор: IUnknown 21.07.2011 3:47

Кто тебе сказал, что у тебя должен происходить вызов конструктора? Ты ж работаешь с указателем, а он не конструируется при описании...

class mc
{
int x;
public:
mc(int px) : x(px)
{
}
};

mc *a;

// при нажатии просто
a = new mc(10);
Это надо было? Или тебе обязательно надо и дудочку и кувшинчик чтоб и без указателей и не сразу конструировалось?

Автор: sheka 21.07.2011 3:55

ага, вроде догадался. или без указателя делать или выделять память)

Добавлено через 1 мин.
Volvo, спасибо. Не видел пост.

Добавлено через 3 мин.

Цитата
и дудочку и кувшинчик
Классный мультик. Всегда его вспоминаю, когда ягоды собираю, но никак не могу понять, почему сначала не собрать в кучку ягоды, а потом ягоды переложить в кувшинчик.