在 MFC(Microsoft Foundation Classes)中,CGdiObject 类提供了 DeleteObject 方法,用于删除由 GDI 对象句柄表示的底层 GDI 资源。以下是该方法的原型:
BOOL DeleteObject();

该方法返回一个布尔值,表示删除操作是否成功。如果成功,返回非零值;如果失败,返回零。

使用示例:
CBitmap myBitmap;
HBITMAP hBitmap = LoadBitmap(NULL, MAKEINTRESOURCE(IDB_MYBITMAP));

if (hBitmap != NULL)
{
    myBitmap.Attach(hBitmap);

    // 使用 myBitmap 对象进行其他操作

    // 删除 GDI 对象,释放底层资源
    if (myBitmap.DeleteObject())
    {
        TRACE(_T("Bitmap deleted successfully.\n"));
    }
    else
    {
        TRACE(_T("Failed to delete bitmap.\n"));
    }
}

在上面的示例中,DeleteObject 方法用于删除 CBitmap 对象所附加的 GDI 对象,并释放底层资源。这是一个重要的步骤,确保在不再需要 GDI 对象时及时释放资源,以防止内存泄漏。


转载请注明出处:http://www.zyzy.cn/article/detail/18034/MFC/CGdiObject