搜索周围,找不到任何意见我的问题。我正在尝试为具有包含指向抽象基类的指针的私有变量的类创建副本构造函数。C++复制构造基类指针
#include "BaseClass.hh"
ClassA::ClassA()
{ }
/* Copy construct a ClassA object */
ClassA::ClassA(const ClassA& obj)
{
std::map<std::string, BaseClass*>::const_iterator it;
//ClassA copy = obj;
for(it = obj.ind.begin(); it != obj.ind.end(); it++)
{
copy.ind[it->first]=(it->second);
}
}
//in .hh file
private:
std::map<std::string, BaseClass*> ind;
我是否关闭?如果没有,我该如何解决这个问题?
您的意思是++以及it ++在'for'子句中吗? –
BaseClass和ClassA如何相关? ClassA是否公开继承BaseClass? – Jagannath
我认为你必须解释的第一件事是:为什么你需要一个自定义的拷贝构造函数?这个人为你提供什么,你希望它没有?还有其他人指出:ClassA是否继承自BaseClass?或者它是一种不同的关系? – Rollie