我写了一个类,主要是为了完成画图工作,
其中,有一个函数为
void SetHDC(HDC hDC)
{
    m_hDC = hDC;
}请问这样写,对么?
如果正确,那m_hDC以前的值怎么办?是否需要手工销毁,如何销毁呢?我觉得可能会有句柄泄露的问题。是否应该写成:
void SetHDC(HDC hDC)
{
    if (m_hDC != NULL)
      //  销毁m_hDC
    m_hDC = hDC;
}自己查了一下MSDN,有函数叫DeleteDC()和ReleaseDC(),但DeleteDC()不能用于GetDC()得到的HDC,而ReleaseDC原型为ReleaseDC(HWND hWnd, HDC hDC),不知道怎么用,呵呵。还请高手帮忙,感激不尽!P.S,我曾经想过使用CDC *m_pDC替换HDC hDC,但不行!