MFC CList类问题

在写一个MFC的画图程序。代码如下:classCDrawPolygon:publicCMapElement{public:CList<CPoint,CPoint>m_Po... 在写一个MFC的画图程序。代码如下:
class CDrawPolygon :
public CMapElement
{
public:
CList<CPoint,CPoint> m_PointArray;
}
class CpaintView : public CView
{
public:
CList<CPoint, CPoint> m_ptArray;
}
我想实现m_PointArray = m_ptArray这个,就是把鼠标获取的点传给图形基元。
但是报错
c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxtempl.h(771): error C2248: “CObject::operator =”: 无法访问 private 成员(在“CObject”类中声明)
1> c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afx.h(535) : 参见“CObject::operator =”的声明
1> c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afx.h(509) : 参见“CObject”的声明
1> 此诊断出现在编译器生成的函数“CList<TYPE,ARG_TYPE> &CList<TYPE,ARG_TYPE>::operator =(const CList<TYPE,ARG_TYPE> &)”中
1> with
1> [
1> TYPE=CPoint,
1> ARG_TYPE=CPoint
1> ]
希望高手帮助解决下,最好给出具体实现代码
展开
 我来答
437384801
推荐于2016-03-17 · TA获得超过1867个赞
知道小有建树答主
回答量:1299
采纳率:0%
帮助的人:511万
展开全部

自己实现操作符的重载operate=(); 

可以自己派生一个类

class My :public CList<Point>

{

 My<Point> operate=(My<Point>l)

{

My<Point >s;

POSITION pos = list.GetHeadPosition();

while(pos!=NULL)

{

Point temValue=list.GetNext(pos);//GetAt(pos);

s.addTails(temvalue);

}

return s;

}

相思丶猫2C
2012-05-13 · TA获得超过1198个赞
知道小有建树答主
回答量:1432
采纳率:50%
帮助的人:954万
展开全部
不支持 = 。
方法一,逐个拷贝。
方法二,采用指针。
追问
指针?
追答
CList *m_PointArray ;
m_PointArray = &m_ptArray
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式