class CObjDSController : public CObject
{
public:
CObjDSSource m_SourceDB;
}class CDlgSelectSourceData : public CDialog
{
public:
CObjDSSource *m_pCObjDSSource;
}
CObjDSController *pCObjDSController;CDlgSelectSourceData dlgSource;
pCObjDSController->m_SourceDB=dlgSource.m_pCObjDSSource;编译
pCObjDSController->m_SourceDB=dlgSource.m_pCObjDSSource;
CObjDSSource' : 'operator =' function is unavailable
两指针赋值,pCObjDSController为一对象指针,m_SourceDB为该对象成员变量(为一类的实例)
m_pCObjDSSource为类CDlgSelectSourceData 的成员指针变量,
两个变量指针如何不能赋值???????
pCObjDSController->m_SourceDB=dlgSource.m_pCObjDSSource;//两个类型不一样
一个是指针,一个是变量
pCObjDSController->m_SourceDB=*dlgSource.m_pCObjDSSource;//试试这个
调试的时候,改来改去,
pCObjDSController->m_SourceDB=*dlgSource.m_pCObjDSSource;
pCObjDSController->m_SourceDB=(CObjDSSource *)dlgSource.m_pCObjDSSource;
都错
调试的时候,改来改去,都改糊涂了
pCObjDSController->m_SourceDB=*dlgSource.m_pCObjDSSource;
pCObjDSController->m_SourceDB=(CObjDSSource *)dlgSource.m_pCObjDSSource;
都错
重载一下“=”在一个进程之内只要不牵扯到系统隐私数据指针是为所欲为的
{
return m;
}