[求助]error C2248: “CObject::operator =”: 无法访问 private 成员
<P>在网上找了很久,不得要领,请高人帮助。<BR>////////////////////////////////////////////////////////<BR>定义自己的类<BR>class CccPoint : public CObject<BR>{<BR>public:<BR> CccPoint();<BR> CccPoint(CPoint newpt);<BR> virtual ~CccPoint();<BR>protected:<BR> int x;<BR> int y;<BR>public:<BR> void draw(CDC* pDC);<BR>};<BR>////////////////////////////////////////////////////////<BR>在文档类"mfc_rw2Doc.h"中添加成员变量<BR>CArray <CccPoint,CccPoint&> * m_pointArry;<BR>////////////////////////////////////////////////////////<BR>在鼠标左键重调用<BR>void Cmfc_rw2View::OnLButtonDown(UINT nFlags, CPoint point)<BR>{<BR> // TODO: 在此添加消息处理程序代码和/或调用默认值</P><P> CccPoint dp(point);</P>
<P> CDC* pDC=GetDC();<BR> dp.draw(pDC);</P>
<P> Cmfc_rw2Doc* pDoc = GetDocument();<BR> pDoc->m_pointArry->Add(dp);</P>
<P><BR> CView::OnLButtonDown(nFlags, point);<BR>}<BR>////////////////////////////////////////////////////////////<BR>编译通不过。提示<BR>错误 1 error C2248: “CObject::operator =”: 无法访问 private 成员(在“CObject”类中声明) d:\my documents\visual studio 2005\projects\mfc_rw2\mfc_rw2\ccpoint.h 16 <BR>//////////////////////////////////////////////////////////////<BR> 请求帮助。<BR></P> 没有人知道吗?????
回复 1# 的帖子
cainiao 要实现如下函数才行CccPoint( const CccPoint& scr );
回复 2# 的帖子
如果你用到类型转换(父转换成子)就要隐式调用父的CccPoint( const CccPoint& scr );如果你要向下面这样:
CccPoint a, b;
....
b = a;
则要实现CccPoint的运算符函数const CccPoint & operator=( const CccPoint & scr );
页:
[1]
