前日,在绘制所接收数据的趋势图之时,由于代码需要整合,故将代码进行拆分成成员函数,这个时候调用出错!
由于我用的就是直接调用CDC对象,例如:
CDC fun(CDC m_DC,CRect m_rect)
{
//你的消息代码
return CDC;
}
但这个时候便会报错,报的错误是你访问到私有成员函数的权限错误,此时很纠结!后来经过上网查询,知道了MFC的程序架构,
在MFC 中很多对象是没有拷贝构造函数的,如果对象有拷贝构造函数的话,如果在继承的时候,子类也会继承拷贝构造函数,同时
当子类解析掉之后,拷贝构造函数何去何从。最重要的是拷贝构造函数给对象带来了很多的危险,具体什么原因,面向对象里面解释
了很多。经查证,CDC也是没有拷贝构造函数的,因此调用的时候,不能够直接调用其对象,因为无法进行对象的构造,只能通过调
用地址或者指针间接的调用函数!例如:
CDC *fun(CDC *m_DC,CRect m_rect)
{
//消息代码
}
这样的话不会报错,当然这个问题是一个细节问题,提出来算是一个小的经验分享!