26.05.2019, 01:32 [+3 UTC]
в нашей команде: 3 644 чел. | участники онлайн: 4 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.75 (18.05.2019)
JS-v.1.33 | CSS-v.3.35

Общие новости:
28.04.2019, 09:13

Форум:
25.05.2019, 11:20

Последний вопрос:
26.05.2019, 00:52
Всего: 149693

Последний ответ:
25.05.2019, 14:47
Всего: 258521

Последняя рассылка:
25.05.2019, 19:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
13.01.2010, 02:57 »
Даниил Цветков
спасибо, оригинальное решение [вопрос № 175937, ответ № 258550]
22.11.2009, 21:42 »
Jekaiseburga
Просто на отлично! Не ожидал, что так быстро ответ будет. [вопрос № 174438, ответ № 256814]
08.03.2019, 13:42 »
dar777
Это самое лучшее решение! [вопрос № 194905, ответ № 277609]

РАЗДЕЛ • С / С++

Создание программ на языках C и C++.

[администратор рассылки: Андрей Кузнецов aka Dr_Andrew (Старший модератор)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей Владимирович
Статус: Модератор
Рейтинг: 620
Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 296
solowey
Статус: Практикант
Рейтинг: 267

Перейти к консультации №:
 

Консультация онлайн # 67326
Раздел: • С / С++
Автор вопроса: Белкин Алексей
Отправлена: 17.12.2006, 03:04
Поступило ответов: 2

Доброе время суток!
Проблема с извлечением данных из структуры, которая передается в LPARAM. Код в приложении.

Приложение:

Состояние: Консультация закрыта

Ответ # 132025 от Torsten

Здравствуйте, Белкин Алексей!
Ты создаешь MY_STRUCT локально для одной функции, поэтому при выходе из нее она удаляется. И соотвественно адрес указателя который ты присвоил LPARAM еще какой-то есть, но память там уже особождена и в ней либо находится уже другие данные, либо мусор.

Выделяй для своей структуры память динамически, чтобы она осталась после выхода из функции и естественно не забывай удалять где-нибудь в другом месте (в данном случае, удобно это сделать во 2-ой функции).

Приложение:


Консультировал: Torsten
Дата отправки: 17.12.2006, 11:55

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 132063 от John Paramol

Здравствуйте, Белкин Алексей!

Достаточно создать структуру mmm статической (со спецификатором static).

PS. Если все же не в этом ошибка, есть у меня другое подозрение, пишите в мини-форум


Консультировал: John Paramol
Дата отправки: 17.12.2006, 16:32

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 67326
неизвестный

# 1

= общий = | 17.12.2006, 20:47

Так как все таки правильней - через динамическое выделение памяти или просто с помощью static? static пока не пробовал. new применил и это, как кажется, вполне решило проблему. Однако возникает вопрос как потом быть с памятью, чтоб не допустить утечек? на выходе проги буду делать тогда: delete (MY_STRUCT *)myparam; - это правильное освобождение памяти?

John Paramol

# 2

= общий = | 17.12.2006, 22:26

Я потому и написал, что правильнее static. Точнее, не правильнее, а надежнее. 1) Память может не выделиться, а вы забудете сделать проверку; 2) Вы можете забыть освободить выделенную память, или попытаетесь освободить ее дважды, или попытаетесь освободить не ту память; Ошибки редкие, но возможные. PS Удаление у вас правильное

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14113 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.75 от 18.05.2019
Версия JS: 1.33 | Версия CSS: 3.35