gxachaturov: (Default)
gxachaturov ([personal profile] gxachaturov) wrote2012-05-20 04:45 pm

FuckOverflowException

Наконец начал класть последние мазки на своего монстра, хромающего сразу на все лапы. Ну, думаю сейчас половлю остатних блох, и... Как бы не так.

Вылез StackOverflowException. При входе в какой-то конструктор. Че делать? Ну, ладно завтра на работе на компе с большей памятью погоняю. Но сегодня-то что делать?

[identity profile] gxachaturov.livejournal.com 2012-05-26 07:06 pm (UTC)(link)
Нет, я так не думаю. Баг появился вместе с созданием нового класса, соданного для новой цели.

Однако, в эти часы наметился прогресс:

стало ясно, что конструктор валится, если я создаю объект класса внутри программного модуля, а если как глобальный, то он не валится.

Но дальше идут новые чудеса, в которых пока не могу разобратся:

Начинаю по существу инициализировать переменную Х

(подкласс_большого_класса Х; )

моего объекта-пустышки, вызываю конструктор:

Х=подкласс_большого_класса (параметры конструктора);

внутри этого конструктора все делается верно. Выхожу из конструктора - Х остался каким был, т.е. неопределенным.

вставляю в эту програмку вспомогательную переменную того же подкласса:

подкласс_большого_класса темп(параметры конструктора);
Х=темп;

Результат: темп правильный, Х остался как был.