Здравствуйте, гость ( Вход | Регистрация )
Алексей1153 | Дата 12.7.2012, 19:19 |
нет, конечно С чего ты это решил ? ) |
|
__ilya__ | Дата 12.7.2012, 14:07 |
Алексей1153, Тогда получается что все действия программы происходят внутри тела конструктора? |
|
Алексей1153 | Дата 12.7.2012, 8:54 |
ты не создаёшь тут локальных объектов. Локальный тут только указатель button - он уничтожится по выходу из функции конструктора |
|
Гость___ilya___* | Дата 11.7.2012, 23:20 |
спасибо помогло! Скажите а в чем смысл создавать объекты локально, в конструкторе? Почему.бы их не сделать членами класса? Я имею в виду кнопки, индикаторы и т.п. | |
Алексей1153 | Дата 11.7.2012, 12:00 |
Цитата class Widget:public QWidget { Q_OBJECT //не забыто ? } ну и Цитата QPushButton *button = new QPushButton("button", this); |
|
__ilya__ | Дата 9.7.2012, 17:23 |
и все-же почему не получается создать, динамически, локально в конструкторе | |
sidsukana | Дата 9.7.2012, 13:26 |
Qt Заботится об удалении QObject объектов, родителями которых были QObject объекты тоже.
В данном контексте obj1 удалит за собой и obj2 (на сколько я знаю) Еще есть метод deleteLater() он вроде как ставит в очередь на удаление. |
|
__ilya__ | Дата 9.7.2012, 12:27 |
и есче вопрос- если у меня члены класса(унаследаваного от QWidget), указатели, а в конструкторе я для них динамически выделяю память(new), нужен-ли деструктор? везде написано что Qt сама заботится об удалении объектов. |
|
__ilya__ | Дата 9.7.2012, 9:55 |
читал макса шлее Qt4.5. там в примерах все объекты, кнопки, слайдеры, надписи и Т.П. создаются в конструкторе локально. почему-то когда я создаю локальный обьект( динамически), в конструкторе при сборке выдает ошибку. может потому-что я использую Qt4.8. [code] Widget::Widget(QWidget *parent) : QWidget(parent) { //... QPushButton *button = new QPushButton("button"); //... } D:\QtCreator_test\SoundPlaer\widget.cpp:-1: In constructor 'Widget::Widget(QWidget*)': но все работает -если я создаю кнопки как члены класса(указатели). а уже в конструкторе динамически выделяю для них память. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 27.4.2024, 20:18 |