Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Глюк в примере MFC "HelloWorld"

2.2K
01 ноября 2002 года
arnold
3 / / 01.11.2002
Глюк в примере MFC "HelloWorld"
В CWinApp::InitInstance() пишу:
m_pMainWnd = new CTestWnd;
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
CTestWnd Наследуется от СWnd. В конструкторе его функция Create().
После завершения программы - утечка памяти !!!
А пример то один к одному как Microsoft нарисовал.
Что делать ???
2.1K
01 ноября 2002 года
kmn
29 / / 09.10.2002
Цитата:
Originally posted by arnold
Глюк в примере MFC "HelloWorld"
В CWinApp::InitInstance() пишу:
m_pMainWnd = new CTestWnd;
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
CTestWnd Наследуется от СWnd. В конструкторе его функция Create().
После завершения программы - утечка памяти !!!
А пример то один к одному как Microsoft нарисовал.
Что делать ???



Переопределить PostNcDestroy

void CTestWnd::PostNcDestroy()
{
delete this;
}

2.2K
01 ноября 2002 года
arnold
3 / / 01.11.2002
Цитата:
Originally posted by kmn


Переопределить PostNcDestroy

void CTestWnd::PostNcDestroy()
{
delete this;
}



Большое спасибо!!! Полтора дня потратил на то что бы избавиться от этого. Инетересно почему в MSDN ничего не написано про это, может я плохо искал ?
И вообще что это за глюк такой, если можешь подробнее опиши.

2.1K
01 ноября 2002 года
kmn
29 / / 09.10.2002
Цитата:
Originally posted by arnold


Большое спасибо!!! Полтора дня потратил на то что бы избавиться от этого. Инетересно почему в MSDN ничего не написано про это, может я плохо искал ?
И вообще что это за глюк такой, если можешь подробнее опиши.



Дело в том, что по идиалогии MFC в качестве главного окна используется наследник от CFrameWnd, у которого PostNcDestroy имено так и реализован.

СWnd, как правило, используется для дочерних окон.

Я тебе рекоменбую использовать CFrameWnd.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог