class CDrawObj : public CObject CDrawObj* CDrawObj::Clone(CDrawDoc* pDoc)
{
ASSERT_VALID(this); CDrawObj* pClone = new CDrawObj(m_position); pClone->m_bPen = m_bPen; pClone->m_logpen = m_logpen; pClone->m_bBrush = m_bBrush; pClone->m_logbrush = m_logbrush; ASSERT_VALID(pClone); if (pDoc != NULL)
pDoc->Add(pClone); return pClone;
}
{
ASSERT_VALID(this); CDrawObj* pClone = new CDrawObj(m_position); pClone->m_bPen = m_bPen; pClone->m_logpen = m_logpen; pClone->m_bBrush = m_bBrush; pClone->m_logbrush = m_logbrush; ASSERT_VALID(pClone); if (pDoc != NULL)
pDoc->Add(pClone); return pClone;
}
CDrawObj* pClone = new CDrawObj(m_position);复制当前对象的成员值给这个新对象:
pClone->m_bPen = m_bPen;
...将新对象加入文档:
pDoc->Add(pClone);