Russian Qt Forum
Ноябрь 22, 2024, 17:18 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 [3] 4 5   Вниз
  Печать  
Автор Тема: QObject и memory leaks  (Прочитано 36561 раз)
niXman
Гость
« Ответ #30 : Август 26, 2010, 16:18 »

еще в детских книжечках пишут о том, что хранить в контейнерах указатели, плохая привычка. для этого существуют самрт-поинтеры.
Записан
Sancho_s_rancho
Гость
« Ответ #31 : Август 26, 2010, 18:00 »

еще в детских книжечках пишут о том, что хранить в контейнерах указатели, плохая привычка. для этого существуют самрт-поинтеры.
И как связаны контейнеры и умные указатели?
Если тебе надо 3 указателя хранить, то что ты будешь делать? а 10? А ежели их число меняется или неизвестно заранее? Да и никто не запрещает хранить список умных указателей, вместо обычных.

А нафига кутешники в своей документации приводят примеры наподобии этого?
Цитировать
QList<Employee *> list;
 list.append(new Employee("Blackpool", "Stephen"));
 list.append(new Employee("Twist", "Oliver"));
И делают функции наподобии qDeleteAll().
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #32 : Август 26, 2010, 18:05 »

Кстати, qDeleteAll избавляет от утечки?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
niXman
Гость
« Ответ #33 : Август 26, 2010, 20:32 »

Цитировать
И как связаны контейнеры и умные указатели?
не более чем new и динамическая память Подмигивающий

Цитировать
Если тебе надо 3 указателя хранить, то что ты будешь делать? а 10? А ежели их число меняется или неизвестно заранее?
может для начала научиться понимать мысль, и не выставлять себя ?%*;№(% Подмигивающий

Цитировать
А нафига кутешники в своей документации приводят примеры наподобии этого?
потому что они гуанЫ*. о чем я не раз писал. так же, дважды доказывал, что их "последователи" тоже гуанЫ*.
Записан
niXman
Гость
« Ответ #34 : Август 26, 2010, 20:50 »

Цитировать
дважды доказывал
точнее - трижды. но последний случай пантер подтер(почему-то;) )
Записан
Sancho_s_rancho
Гость
« Ответ #35 : Август 26, 2010, 21:10 »

Цитировать
И как связаны контейнеры и умные указатели?
не более чем new и динамическая память Подмигивающий

Цитировать
Если тебе надо 3 указателя хранить, то что ты будешь делать? а 10? А ежели их число меняется или неизвестно заранее?
может для начала научиться понимать мысль, и не выставлять себя ?%*;№(% Подмигивающий

Цитировать
А нафига кутешники в своей документации приводят примеры наподобии этого?
потому что они гуанЫ*. о чем я не раз писал. так же, дважды доказывал, что их "последователи" тоже гуанЫ*.
1)Контейнеры - это заумные массивы, оптимизированные под разные задачи.  Умные указатели - указатели, рулящие и педалищие временем жизни объекта. Например: программа переходит в другой режим и некоторые QAction надо сделать неактивными. Я беру QList<QAction*> и делаю Disabled. Ну и где тут ужас от использования указателей в контейнерах?
2)Если смысл какой-то тайный, то это не ко мне.
3)Я использую Qt и следую ее идеологии, т.к. было бы странно пытаться сделать из деталей велосипеда лыжные палки, см. пирровы победы. При этом я не птица или птичий помёт, я человек.
4) А будешь много умничать, я тебе снова поломаю твой он-лайн компилер. Веселый
Записан
Sahab
Гость
« Ответ #36 : Август 26, 2010, 21:24 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
Записан
niXman
Гость
« Ответ #37 : Август 26, 2010, 21:31 »

Цитировать
И как связаны контейнеры и умные указатели?
не более чем new и динамическая память Подмигивающий

Цитировать
Если тебе надо 3 указателя хранить, то что ты будешь делать? а 10? А ежели их число меняется или неизвестно заранее?
может для начала научиться понимать мысль, и не выставлять себя ?%*;№(% Подмигивающий

Цитировать
А нафига кутешники в своей документации приводят примеры наподобии этого?
потому что они гуанЫ*. о чем я не раз писал. так же, дважды доказывал, что их "последователи" тоже гуанЫ*.
1)Контейнеры - это заумные массивы, оптимизированные под разные задачи.  Умные указатели - указатели, рулящие и педалищие временем жизни объекта. Например: программа переходит в другой режим и некоторые QAction надо сделать неактивными. Я беру QList<QAction*> и делаю Disabled. Ну и где тут ужас от использования указателей в контейнерах?
2)Если смысл какой-то тайный, то это не ко мне.
3)Я использую Qt и следую ее идеологии, т.к. было бы странно пытаться сделать из деталей велосипеда лыжные палки, см. пирровы победы. При этом я не птица или птичий помёт, я человек.
4) А будешь много умничать, я тебе снова поломаю твой он-лайн компилер. Веселый

1. опять мысль не уловили. уже систематичность.
2. читать пункт выше.
3. кто бы сомневался? Подмигивающий
4. там нечего ломать. все уже исправлено(разве что временные файлы). за что я вас поблагодарил.
Записан
niXman
Гость
« Ответ #38 : Август 26, 2010, 21:33 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
он, и "провокация"? Шокированный
все знают кто настоящий провокатор Смеющийся подпись выдает Строит глазки
Записан
Sancho_s_rancho
Гость
« Ответ #39 : Август 26, 2010, 22:02 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
Никаких провокаций. Объясните доходчиво, ну для простых смертных.
Записан
niXman
Гость
« Ответ #40 : Август 26, 2010, 22:04 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
Никаких провокаций. Объясните доходчиво, ну для простых смертных.
объясняю: в теме обсуждается ситуация владения указателем. ты же привел в пункте 1), абсолютно противоположный пример.
кстати, не удивляюсь.
Записан
Sancho_s_rancho
Гость
« Ответ #41 : Август 27, 2010, 06:35 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
Никаких провокаций. Объясните доходчиво, ну для простых смертных.
объясняю: в теме обсуждается ситуация владения указателем. ты же привел в пункте 1), абсолютно противоположный пример.
кстати, не удивляюсь.
1)  "еще в детских книжечках пишут о том, что хранить в контейнерах указатели, плохая привычка." - это твои слова. Разница между хранить и управлять временем жизни есть?
2)Тема была об утечках памяти.
3)Только не надо бла-бла про то, что умные указатели - это единственное верное решение.
Записан
niXman
Гость
« Ответ #42 : Август 27, 2010, 11:48 »

Sancho_s_rancho рили не понимаешь о чем идет речь? ... или так ... провокация?
Никаких провокаций. Объясните доходчиво, ну для простых смертных.
объясняю: в теме обсуждается ситуация владения указателем. ты же привел в пункте 1), абсолютно противоположный пример.
кстати, не удивляюсь.
1)  "еще в детских книжечках пишут о том, что хранить в контейнерах указатели, плохая привычка." - это твои слова. Разница между хранить и управлять временем жизни есть?
2)Тема была об утечках памяти.
3)Только не надо бла-бла про то, что умные указатели - это единственное верное решение.
да ты и в правду *&$*#&@
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #43 : Август 27, 2010, 11:50 »

niXman: Ты достал уже. Еще один недельный бан.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Sahab
Гость
« Ответ #44 : Август 27, 2010, 13:13 »

а что это Вы, сударь, бана(на)ми раскидались... нервишки пошаливают?... может ссылку на пункт правил?
Записан
Страниц: 1 2 [3] 4 5   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.132 секунд. Запросов: 23.