Название: Функция init () не обрабатывается Отправлено: taifun от Январь 18, 2010, 11:34 Здраствуйте! Создал новый проект:
Код: #include <QtGui> Код: #include <QtGui> Название: Re: Функция init () не обрабатывается Отправлено: Akaiten от Январь 18, 2010, 11:43 Вообще ничего не понятно ::)
В первом случае init() закамментена и не вызывается, да и втором случае тоже не вызывается. При чём здесь функция init()? Название: Re: Функция init () не обрабатывается Отправлено: DS_tm от Январь 18, 2010, 12:20 Сдаеться мне, что вы раньше использовали класс, наследованный от класса, в котором операция init была виртуальной и запускалась в конструкторе. Соответсвенно переопределив ее в своем классе, и вызвав конструктор родительского класса вы вызывали init().
Название: Re: Функция init () не обрабатывается Отправлено: Авварон от Январь 18, 2010, 13:01 мне казалось виртуалки в конструкторе не вызываются... по крайней мере я ухирился так вызвать pure virtual
Название: Re: Функция init () не обрабатывается Отправлено: taifun от Январь 18, 2010, 13:05 Цитировать Вообще ничего не понятно Строит глазки закоментировал, потому что проверял так как раньше не надо было вызывать в конструкторе эту функцию она сама каким-то "чудом" (хотелось бы выяснить каким) вызывалась, а теперь не вызывается, вот я ее принудительно вызвал - проверил - заработало и потом закоментировал не работает ???В первом случае init() закамментена и не вызывается, да и втором случае тоже не вызывается. При чём здесь функция init()? Сдаеться мне, что вы раньше использовали класс, наследованный от класса, в котором операция init была виртуальной и запускалась в конструкторе. Соответсвенно переопределив ее в своем классе, и вызвав конструктор родительского класса вы вызывали init(). Хммм... все время ее не вызывал, а тут на те приехали ... Вот прикрепил файлик (в нем я инит не вызываю), если кто-то может разъясните ситуацию. Название: Re: Функция init () не обрабатывается Отправлено: DS_tm от Январь 18, 2010, 13:27 Сдаеться мне, что вы раньше использовали класс, наследованный от класса, в котором операция init была виртуальной и запускалась в конструкторе. Соответсвенно переопределив ее в своем классе, и вызвав конструктор родительского класса вы вызывали init(). Хммм... все время ее не вызывал, а тут на те приехали ... Вот прикрепил файлик (в нем я инит не вызываю), если кто-то может разъясните ситуацию. Может дело вот в чем: "This is one of two special slots added by Qt Designer to avoid the old (Qt version 2.x) approach when it was necessary to sub-class each dialog to add a constructor or destructor. The protected slots init() and destroy() save you from this approach." На данный момент никаких слотов или виртуалок с именем init в иерархии QMainWindow нету. |