Резкий выход из проги: куда девается выделенная память ?

Модератор: Fastman

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
malor
ефрейтор
Сообщения: 55
Зарегистрирован: 2007-07-09 20:20:25

Резкий выход из проги: куда девается выделенная память ?

Непрочитанное сообщение malor » 2011-07-11 9:15:04

Код: Выделить всё

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                                              LPTSTR lpCmdLine, int cmdShow)
{
    int *pi = new int;
   
    MSG msg;
    BOOL bRet;
    while ((bRet = GetMessage(&msg, NULL, 0, 0)) != 0)
    {
        if (bRet == -1)
        {
            // handle the error and possibly exit
        }
        else
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    }

    delete pi;
    return 0;
}

Во время работы программы мы нажимаем Ctrl+Alt+Delete и убиваем процесс. В итоге оператор
delete pi;
остается не выполненным? Какие последствия?

Dambo
ефрейтор
Сообщения: 61
Зарегистрирован: 2009-11-27 22:29:58

Re: Резкий выход из проги: куда девается выделенная память ?

Непрочитанное сообщение Dambo » 2011-07-11 9:43:09

Если вы пишите под ос windows, то ни каких она после завершения программы освобождает оперативку которую выделяла.
С unix не знаю скорее должны освобождать, надо смотреть конкретно,.


Вернуться в «C/C++»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость