Как можна узнать размер обьекта который я пытаюсь удалить через глобально переопределенный operator delete, там я имею только void*, а sizeof- у нужен тип которого я не знаю... ???
Здравствуйте, Аноним, Вы писали:
А>Привет!!!
А>Как можна узнать размер обьекта который я пытаюсь удалить через глобально переопределенный operator delete, там я имею только void*, а sizeof- у нужен тип которого я не знаю... ???
А тебе зачем?
Любите книгу — источник знаний (с) М.Горький
Re[2]: Как узнать размер обьекта в operator delete?
От:
Аноним
Дата:
29.10.04 09:55
Оценка:
Здравствуйте, Bell, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Привет!!!
А>>Как можна узнать размер обьекта который я пытаюсь удалить через глобально переопределенный operator delete, там я имею только void*, а sizeof- у нужен тип которого я не знаю... ??? B>А тебе зачем?
Нужно промониторить память на корректность удаления обьектов...
Здравствуйте, <Аноним>, Вы писали:
А>Привет!!!
А>Как можна узнать размер обьекта который я пытаюсь удалить через глобально переопределенный operator delete, там я имею только void*, а sizeof- у нужен тип которого я не знаю... ???
У оператора delete есть второй вариант, где есть второй параметр — size_t
... << RSDN@Home 1.1.4 beta 2 >>
Re[3]: Как узнать размер обьекта в operator delete?
Re[4]: Как узнать размер обьекта в operator delete?
От:
Аноним
Дата:
29.10.04 10:24
Оценка:
Здравствуйте, Bell, Вы писали:
B>Здравствуйте, Аноним, Вы писали:
А>>Нужно промониторить память на корректность удаления обьектов... B>Может быть поможет эта статья
.
B>ЗЫ B>А тулзы типа BoundsChecker не помогают?
Мне лично неудобно им пользоваться, так как он останавливаеться даже в тех местах где ошибок распределения памяти нету, к примеру там где обьекты складываются в коллекцию и и где то при выходе из программы удаляються, а он проверяет по принципу — если в блоке есть operator new, но нету operator delete то все ошибка...
Re: Как узнать размер обьекта в operator delete?
От:
Аноним
Дата:
29.10.04 12:56
Оценка:
А>Как можна узнать размер обьекта который я пытаюсь удалить через глобально переопределенный operator delete, там я имею только void*, а sizeof- у нужен тип которого я не знаю... ???
А по указателю нельзя узнать сколько памяти было выделенно на данный адрес?