回 帖 发 新 帖 刷新版面

主题:对象作用域的问题

void COptionsDialog::OnOK ()
{
    UpdateData (TRUE);

    RECTPROP rp;
    rp.nWidth = m_nWidth;
    rp.nHeight = m_nHeight;
    rp.nUnits = m_nUnits;
 
    AfxGetMainWnd ()->SendMessage (WM_USER_APPLY, 0, (LPARAM) &rp);
}

请问RECTROP结构体对象rp再函数结束就释放了,在消息传递中再传递它的地址有什么用呢?
对像已经不在了,还能通过地址访问吗?

回复列表 (共1个回复)

沙发

正如你说所,函数结素对象释放,然而在传递的时候函数结束了吗?没有吧,它已经旅游到SendMessage中,结束它的旅游过后,你的函数才会结束,那末它的旅游任务已经完成,它爱上哪去就让它去吧!

我来回复

您尚未登录,请登录后再回复。点此登录或注册