Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как проверить есть ли под указателем свободная, память или нет??? 
:(
    Опции темы
np9mi7
  Дата 20.1.2005, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 17.8.2003
Где: Volgograd, Russia

Репутация: 1
Всего: 10



Добрый день!
Проблема...

Есть код:
Код

TForm1* p = new TForm1(/*Куча параметров*/);

//тут может произойти уничтожение объекта (вызвался деструктор)




Как проверить что p указывает на что то или нет???

Те нужна функция которая спрашивает у винды: память под указателем освобождена или нет???

Заранее благодарен за помощь...


--------------------
"Я точно знаю то, что ничего не знаю..." Сократ.
evolution project
PM MAIL WWW ICQ MSN   Вверх
Adil'
Дата 20.1.2005, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 26.8.2004
Где: Питер

Репутация: 4
Всего: 15



Боюсь что это не так просто сделать. Гораздо проще сразу после освобождения памяти самому обнулить указатель.


--------------------
Удачи
PM MAIL WWW   Вверх
np9mi7
Дата 20.1.2005, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 17.8.2003
Где: Volgograd, Russia

Репутация: 1
Всего: 10



Я так думаю у винды есть какая нибудь API под это дело....


--------------------
"Я точно знаю то, что ничего не знаю..." Сократ.
evolution project
PM MAIL WWW ICQ MSN   Вверх
NiJazz
Дата 20.1.2005, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

Репутация: нет
Всего: 23



arajan
Попробуй GlobalSize, LocalSize, HeapSize, _msize. Может, хоть одна из них прокатит.
PM MAIL   Вверх
Adil'
Дата 20.1.2005, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 26.8.2004
Где: Питер

Репутация: 4
Всего: 15



АПИ-шные нельзя использовать, т.к. выделенем памяти в new заведует борландовский менеджер памяти. Он конечно, использует АПИ, но хитро


--------------------
Удачи
PM MAIL WWW   Вверх
NiJazz
Дата 20.1.2005, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

Репутация: нет
Всего: 23



Цитата
Он конечно, использует АПИ, но хитро

smile
PM MAIL   Вверх
sergejzr
Дата 20.1.2005, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: нет
Всего: 360



Лови exception smile ИМХО.

По идее ты должен сам контролировать состояние указателя в процессе программы.

Ну а если не делаешь так, то через try catch блок...


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
myaut
Дата 23.1.2005, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.1.2005

Репутация: нет
Всего: нет



Цитата(arajan @ 20.1.2005, 12:13)
Я так думаю у винды есть какая нибудь API под это дело....

после вызова деструктора ИМХО винда теряет информацию о форме ;)
PM MAIL   Вверх
Adil'
Дата 24.1.2005, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 311
Регистрация: 26.8.2004
Где: Питер

Репутация: 4
Всего: 15



Цитата(NiJazz @ 20.1.2005, 22:24)
Цитата
Он конечно, использует АПИ, но хитро  smile
Как пример - см дискуссию в этом топике: вывод картинки из массива битов, немного API



--------------------
Удачи
PM MAIL WWW   Вверх
np9mi7
Дата 25.1.2005, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 17.8.2003
Где: Volgograd, Russia

Репутация: 1
Всего: 10



Действительно не правильно поставленная задача....
Коли создал указатель, то сам за него и отвечай.... КОнечно можно посмотреть на память на низком уровне ОС, но это еще не ответ, есть ли объект под ним или нет....

Короче все это касается вопроса эффективного управления ресурсами...

МОЖЕТ КТО ПОДСКАЖЕТ КНИГИ ПО ЭТОМУ ПОВОДУ!?


--------------------
"Я точно знаю то, что ничего не знаю..." Сократ.
evolution project
PM MAIL WWW ICQ MSN   Вверх
Hroft
Дата 2.2.2005, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 20.10.2003
Где: Москва

Репутация: 1
Всего: 3



Джефф Элджер, "питер"ского издательства, из серии библиотека программиста.
Jeff Alger (Джефф Элджер)
C++ for Real programmers (C++ Библиотека программиста) - название такое.
Не знаю, скачается ли:
http://anatolix.naumen.ru/Books/cplusplus.
Там много про умные указатели и сборку мусора.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.2927 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.