Название: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: myr от Апрель 27, 2010, 10:43 Как проверить выделена уже память или нет?
В В Delphi if not Assigned (frmParam) then frmParam:=TfrmParam.Create(MainForm); dlg = new Tdlg(this) // Спасибо Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: myr от Апрель 27, 2010, 10:50 Qt 3.3
QРointer нет Остается только обнулять указатели? Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: Авварон от Апрель 27, 2010, 11:02 что плохого в обнуленных указателях?
вплоне себе нормальных способ, да и от двойных делетов защищает (delete 0 программа не упадет) Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: myr от Апрель 27, 2010, 11:06 Спасибо.
Искала еще варианты. Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: Пантер от Апрель 27, 2010, 11:39 Еще вариант перейти на Qt4 и использовать QРointer.
Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: crossly от Апрель 27, 2010, 12:32 еще вариант.... с помощью эксепшина bad_alloc
Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: myr от Апрель 27, 2010, 14:24 У меня старый Qt.
Исключения лучше не использовать. Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: crossly от Апрель 27, 2010, 14:46 почему??
Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: m_ax от Апрель 27, 2010, 15:23 Цитировать Qt 3.3 QРointer нет Остается только обнулять указатели? Как вариант, написать свой QPointer) А что? Название: Re: Как проверить создан виджет или нет? аналол Assigned в Dilphi Отправлено: myr от Апрель 27, 2010, 16:34 Спасибо.
Про использование исключений - прочитала. Признаю неправоту. Была уверена что их использовать в Qt 3 не рекомендуется,( исторические корни из-за кросплатформенности). Обнуление указателей - хороший вариант. Остановилась на нем. |